某位同学修读了n门课程(n的取值至少为3),每门课程有不同的学分,并获得了不同的成绩,请利用组合数据类型中的知识,输入各科目、成绩和学分后并输出显示,计算加权平均分后将结果输出;
时间: 2023-06-16 20:08:28 浏览: 60
好的,我可以帮您写一个简单的程序来实现这个功能。以下是Python语言的示例代码:
```
# 定义一个课程类
class Course:
def __init__(self, name, credit, score):
self.name = name
self.credit = credit
self.score = score
# 输入各科目、成绩和学分
n = int(input("请输入修读的课程数:"))
courses = []
for i in range(n):
name = input("请输入第%d门课程的名称:" % (i+1))
credit = float(input("请输入第%d门课程的学分:" % (i+1)))
score = float(input("请输入第%d门课程的成绩:" % (i+1)))
courses.append(Course(name, credit, score))
# 计算加权平均分
total_credit = 0
weighted_score = 0
for course in courses:
total_credit += course.credit
weighted_score += course.credit * course.score
weighted_average = weighted_score / total_credit
# 输出各科目、成绩和学分以及加权平均分
print("各科目、成绩和学分如下:")
for course in courses:
print("%s\t%.1f\t%.1f" % (course.name, course.score, course.credit))
print("加权平均分为:%.2f" % weighted_average)
```
您可以在命令行窗口输入上述代码,或在Python集成开发环境(如PyCharm)中创建一个新的Python文件并将代码粘贴进去,然后运行该程序。程序将提示您逐一输入各科目、成绩和学分,并计算加权平均分后输出。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)