#3 GPA计算(python)

欢迎光临我的blog!专栏记录本萌新初学python解题情况,欢迎大家交流思考

  

 题目如上,较为简单,需掌握字典

【解】

 

首先获取输入的百分制成绩,并四舍五入

score=eval(input('请输入百分制分数:'))
score = round(score)

*这里用到round函数,原理“四舍五入,奇进偶舍”

然后将百分制成绩和成绩等级、GPA对应存放于字典中

dic={95:["A+",4.33],90:["A",4.00],85:["A-",3.67],82:["B+",3.33],78:["B",3.00],75:["B-",2.67],
     72:["C+",2.33],68:["C",2.00],64:["C-",1.67],61:["D+",1.33],60:["D",1.00],0:["F",0]}

此时键已经降序排列,一一比较找到score所属成绩区间

i=0
while i<len(dic):
    if score < list(dic.keys())[i]:
        i += 1
    else:
        break

*退出循环时i指向所属区间位置

最后输出成绩等级以及GPA

print("对应的成绩等级是"+list(dic.values())[i][0])
print("对应的GPA是"+str(list(dic.values())[i][1]))

完整代码如下

score=eval(input('请输入百分制分数:'))
score = round(score)
dic={95:["A+",4.33],90:["A",4.00],85:["A-",3.67],82:["B+",3.33],78:["B",3.00],75:["B-",2.67],
     72:["C+",2.33],68:["C",2.00],64:["C-",1.67],61:["D+",1.33],60:["D",1.00],0:["F",0]}
i=0
while i<len(dic):
    if score < list(dic.keys())[i]:
        i += 1
    else:
        break
print("对应的成绩等级是"+list(dic.values())[i][0])
print("对应的GPA是"+str(list(dic.values())[i][1]))

水平有限,请多多包涵!

欢迎在评论区发表您的意见!!谢谢啦

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值