{{tag>projects cloud club computing virtualization machines VMs AWS Azure GCP}}
[[python_club|About the Club]]\\
==== Python Club Topics - Exercise: GPA to grade letter conversion ====
==== Exercise: GPA to grade letter conversion ====
**Output:** Display grade letters based upon input from the user, according to the table below.\\
Write a Python program to convert GPAs to letter grades according to the following table:
^ GPAs ^ Grades ^
| 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 |\\
What you learn from the example:
- Get input from a user
- Manipulate strings
- Use conditionals
==== Solution 1 ====
# 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))
\\
==== Solution 2 ====
# License: https://bit.ly/3oLErEI ==> Modified version of Solution 1 that's easier to read/understand
# 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
for grade in nums:
if grade >= 4.0:
return 'A+'
elif grade >= 3.7:
return 'A'
elif grade >= 3.4:
return 'A-'
elif grade >= 3.0:
return 'B+'
elif grade >= 2.7:
return 'B'
elif grade >= 2.4:
return 'B-'
elif grade >= 2.0:
return 'C+'
elif grade >= 1.7:
return 'C'
elif grade >= 1.4:
return 'C-'
else:
return 'F'
# 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))