w3resource

Python: Convert GPAs to letter grades

Python Programming Puzzles: Exercise-77 with Solution

Write a Python program to convert GPAs to letter grades according to the following table:

GPAsGrades
4.0: A+
3.7: A
3.4: A-
3.0: B+
2.7: B
2.4: B-
2.0: C+
1.7: C
1.4: C-
below:F
Input: 
[4.0, 3.5, 3.8]
Output: 
['A+', 'A-', 'A']
Input:  
[5.0, 4.7, 3.4, 3.0, 2.7, 2.4, 2.0, 1.7, 1.4, 0.0]
Output:
['A+', 'A+', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'F']

Sample Solution:

Python Code:

# License: https://bit.ly/3oLErEI

# Define a function named 'test' that takes a list of GPAs as input
def test(nums):
    # Use list comprehension to convert GPAs to letter grades
    return ["A+" if grade >= 4.0
            else ("A" if grade >= 3.7
                  else ("A-" if grade >= 3.4
                        else ("B+" if grade >= 3.0
                              else ("B" if grade >= 2.7
                                    else ("B-" if grade >= 2.4
                                          else ("C+" if grade >= 2.0
                                                else ("C" if grade >= 1.7
                                                      else ("C-" if grade >= 1.4
                                                            else "F"))))))))
            for grade in nums]

# Example 1
nums1 = [4.0, 3.5, 3.8]
print("List of numbers:", nums1)
print("Convert GPAs to letter grades:")
print(test(nums1))

# Example 2
nums2 = [5.0, 4.7, 3.4, 3.0, 2.7, 2.4, 2.0, 1.7, 1.4, 0.0]
print("\nList of numbers:", nums2)
print("Convert GPAs to letter grades:")
print(test(nums2))

Sample Output:

List of numbers: [4.0, 3.5, 3.8]
Convert GPAs to letter grades:
['A+', 'A-', 'A']

List of numbers: [5.0, 4.7, 3.4, 3.0, 2.7, 2.4, 2.0, 1.7, 1.4, 0.0]
Convert GPAs to letter grades:
['A+', 'A+', 'A-', 'B+', 'B', 'B-', 'C+', 'C', 'C-', 'F']

Flowchart:

Flowchart: Python - Convert GPAs to letter grades.

Python Code Editor :

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Find the index of the largest prime in the list and the sum of its digits.
Next: Find the two closest distinct numbers in a given a list of numbers.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.