1 问题
编写代码模拟比赛最终成绩的计算过程,至少三个评委,去掉最高分和最低分并计算剩余分数的平均分要求最终结果为整数。
2 方法
首先使用一个循环要求输入评委人数,再次使用循环输入每个评委的打分,最后删除最高分和最低分并计算剩余分数的平均分。
代码清单1
while True:
try:
n = int(input("请输入评委人数:"))
if n <= 2:
print("评委人数至少3人")
else:
break
except:
pass
scores = []
for i in range(n):
while True:
try:
score = input("请输入第{}个评委的分数:".format(i+1))
score = float(score)
assert 0<=score<=100
scores.append(score)
break
except:
print("分数错误")
highest = max(scores)
lowest = min(scores)
scores.remove(highest)
scores.remove(lowest)
finalScore = round(sum(scores)/len(scores))
M= '去掉一个最高分{0}\n去掉一个最低分{1}\n最后得分{2}'
print(M.format(highest,lowest,finalScore))
3 结语
通过利用python来解决如何完成最终成绩的计算,也可以更加熟练的使用python来解决现实中的实际问题。