编写一个使用Python计算学生GPA的程序。
创始人
2024-12-07 09:01:49
0

下面是一个使用Python计算学生GPA的程序的代码示例:

# 定义字典,将字母成绩映射到对应的GPA值
grade_to_gpa = {
    'A+': 4.3,
    'A': 4.0,
    'A-': 3.7,
    'B+': 3.3,
    'B': 3.0,
    'B-': 2.7,
    'C+': 2.3,
    'C': 2.0,
    'C-': 1.7,
    'D+': 1.3,
    'D': 1.0,
    'F': 0.0
}

# 获取学生的成绩和学分
num_courses = int(input("请输入课程数量:"))

total_grade_points = 0
total_credits = 0

for _ in range(num_courses):
    grade = input("请输入成绩:")
    credits = int(input("请输入学分:"))
    
    # 根据字典将成绩转换为GPA值
    gpa = grade_to_gpa.get(grade, 0)
    
    # 更新总学分和总绩点
    total_credits += credits
    total_grade_points += gpa * credits

# 计算GPA值
gpa = total_grade_points / total_credits

# 输出结果
print("学生的GPA值为:", gpa)

这个程序首先定义了一个字典grade_to_gpa,将字母成绩映射到对应的GPA值。然后,程序通过用户输入获取学生的成绩和学分,根据字典将成绩转换为对应的GPA值,并更新总学分和总绩点。最后,程序计算GPA值并输出结果。

请注意,这个代码示例假设用户输入的成绩是合法的字母成绩,如果用户输入了无效的成绩,程序会将其对应的GPA值设置为0。在实际应用中,你可能需要添加额外的输入验证和错误处理来保证程序的健壮性。

相关内容

热门资讯

Android Recycle... 要在Android RecyclerView中实现滑动卡片效果,可以按照以下步骤进行操作:首先,在项...
安装apache-beam==... 出现此错误可能是因为用户的Python版本太低,而apache-beam==2.34.0需要更高的P...
Android - 无法确定任... 这个错误通常发生在Android项目中,表示编译Debug版本的Java代码时出现了依赖关系问题。下...
Android - NDK 预... 在Android NDK的构建过程中,LOCAL_SRC_FILES只能包含一个项目。如果需要在ND...
Akka生成Actor问题 在Akka框架中,可以使用ActorSystem对象生成Actor。但是,当我们在Actor类中尝试...
Agora-RTC-React... 出现这个错误原因是因为在 React 组件中使用,import AgoraRTC from “ago...
Alertmanager在pr... 首先,在Prometheus配置文件中,确保Alertmanager URL已正确配置。例如:ale...
Aksnginxdomainb... 在AKS集群中,可以使用Nginx代理服务器实现根据域名进行路由。以下是具体步骤:部署Nginx i...
AddSingleton在.N... 在C#中创建Singleton对象通常是通过私有构造函数和静态属性来实现,例如:public cla...
Alertmanager中的基... Alertmanager中可以使用repeat_interval选项指定在一个告警重复发送前必须等待...