题目描述 要计算一个学生的 GPA,先将每门学科的等第换算成为一个绩点,规则为: 等第 A 为 4 4 分; 等第 B 为 3 3 分; 等第 C 为 2 2 分; 等第 D 为 1 1 分; 如果有 + 号后缀,则加 0.3 0.3 分。例如 B+ 为 3.3 3.3 分; 如果有 - 号后缀,则减 0.3 0.3 分。例如 C- 为 1.7 1.7 分。 接下来,再计算这些分数的平均数,四舍五入保留两位小数即可获得 GPA。 给定一个字符序列表示小爱每门课程的等第,请计算她的GPA。 输入格式 一个字符序列:表示小爱各门课程的等第,一门课程的等第只可能是 A、B、C、D 中的一个,保证 + 号或 - 号只会出现在字母的后面。 输出格式 一个两位小数:表示输入等第对应的 GPA。 数据范围 1≤n≤1000。
时间: 2024-04-17 21:25:07 浏览: 197
GPA-Calculator:一个基于Android的应用程序,可帮助学生计算其gpa
这是一个计算学生 GPA 的问题。每个等第对应一个绩点,然后计算所有课程的平均绩点,最后四舍五入保留两位小数即可获得 GPA。
您可以使用以下 Python 代码来解决这个问题:
```python
def calculate_gpa(grades):
gpa_dict = {'A': 4.0, 'B': 3.0, 'C': 2.0, 'D': 1.0}
gpa = []
for grade in grades:
if grade[-1] == '+':
gpa.append(gpa_dict[grade[0]] + 0.3)
elif grade[-1] == '-':
gpa.append(gpa_dict[grade[0]] - 0.3)
else:
gpa.append(gpa_dict[grade[0]])
average_gpa = sum(gpa) / len(gpa)
return round(average_gpa, 2)
grades = input().split()
gpa = calculate_gpa(grades)
print(gpa)
```
您可以按照以下格式输入小爱每门课程的等第:
```
A B+ C- D
```
然后程序将计算并输出小爱的 GPA。
希望能帮到您!如果您还有其他问题,请随时提问。
阅读全文