I use percentages to map to letter grades. The percentages mirror the 4.0 scale, except that where a GPA difference of 1.0 corresponds to a full letter grade, I use a percentage difference of 10. The table below shows the conversion from numerical grades to letter grades.
Number → Letter Conversion 


Numerical Grade 
Letter Grade 
Equivalent on 4.0 scale 
≥ 97.5 
A+ 
4.0 
≥ 92.5 
A 
> 3.7 
≥ 90.0 
A 
> 3.3 
≥ 87.5 
B+ 
> 3.0 
≥ 82.5 
B 
> 2.7 
≥ 80.0 
B 
> 2.3 
≥ 77.5 
C+ 
> 2.0 
≥ 72.5 
C 
> 1.7 
≥ 70.0 
C 
> 1.3 
≥ 67.5 
D+ 
> 1.0 
≥ 62.5 
D 
> 0.7 
≥ 60.0 
D 
> 0.0 
< 60.0 
E 
0.0 
Letter → Number Conversion 


Letter Grade 
Numerical Grade 
A+ 
98.75 
A 
95.00 
A 
91.25 
B+ 
88.75 
B 
85.00 
B 
81.25 
C+ 
78.75 
C 
75.00 
C 
71.25 
D+ 
68.75 
D 
65.00 
D 
61.25 
E 
55.00 
It is my practice not to round the numerical grade before mapping to letter grades by the table. This can be a sore point, so let me explain. For example, I use ≥90.00 as the transition from a B+ to an A. This means that if your numerical grade is 89.9, I map it to a B+ and not an A. It can be heartbreaking to miss a grade boundary by 0.1, I know. But to round up, say, every numerical grade ≥89.50 to 90.00 and map that to an A, means that the transition from B+ to A is actually 89.50, not 90.00. And that would mean that a grade of 89.4 would miss a grade boundary by 0.1. (It would also mean that me announcing the grade boundary of 90.00 is not accurate.) No matter what policiy is followed, some could miss a grade boundary by a hair. Even though there may be some psychological difference between the two situations, I prefer to keep it straightforward by announcing the sharp grade boundary and then following it strictly. I find it helps keeps the process more objective, and does not allow room for subjective grade adjustments, which are almost always unfair.