栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python习题——每门课学分乘上单门课绩点,求和后对学分求均值

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python习题——每门课学分乘上单门课绩点,求和后对学分求均值

描述:
牛牛在门头沟大学学习,一学年过去了,需要根据他的成绩计算他的平均绩点,假如绩点与等级的对应关系如下表所示。请根据输入的等级和学分数,计算牛牛的均绩(每门课学分乘上单门课绩点,求和后对学分求均值)。

输入描述:
连续输入一行等级一行学分,遇到等级为False则结束输入。
输出描述:
均绩保留两位小数。
示例1
A
3
B
4
C
2
False

# dictA = {'A': 4.0, 'B': 3.0, 'C': 2.0, 'D': 1.0}
endstr = "False"  # 重新定义结束符
li = []  #输入的列表
score = [] #学分
grade = [] #等级
for line in iter(input, endstr):  # 每行接收的东西
    # str+= line+"n"#换行
    li.append(line)

for i in range(0, len(li)):
    if i % 2 != 0:
        score.append(int(li[i]))
for j in range(0, len(li)):
    if j % 2 == 0:
        grade.append(li[j])
di = zip(grade, score) #打包列表,使两个列表一一对应
pair = list(di)
sum_score = sum(score)
# print(pair)
k = 0
sum0 = 0


while k < len(pair):
    for item in pair:
        if item[0] == 'A':
            sum0 += item[1] * 4.00
            k += 1
       
        elif item[0] == 'B':
            sum0 += item[1] * 3.00
            k += 1
       
        elif item[0] == 'C':
            sum0 += item[1] * 2.00
            k += 1
        
        elif item[0] == 'D':
            sum0 += item[1]
            k += 1
        elif item[0] == 'F':
            sum0 = sum0
            k += 1

a = sum0 / sum_score
print("%.2f" % a)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1025569.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号