模拟最终成绩计算过程
- 模拟最终成绩计算过程 推荐度:
- 相关推荐
模拟最终成绩计算过程
首先输入大于2的整数作为评委人数,然后依次输入每个评委的打分,要求每个分数介于0~100.输入完所有评委打分之后,去掉一个最高分,去掉一个最低分,剩余分数的平均分即为该选手的最终得分
(1)
while True:try:n = int(input('请输入评委人数:'))assert n > 2# 跳出循环breakexcept:print('必须输入大于2的整数')# 用来保存所有评委的打分
scores = []# 依次输入每个评委的打分
for i in range(n):# 这个循环用来保证用户必须输入0~100的数字while True:try:score = float(input('请输入第{0}个评委的分数:'.format(i+1)))assert 0 <= score <= 100scores.append(score)breakexcept:print('必须属于0到100之间的实数.')
# 计算并删除最高分和最低分
highest = max(scores)
scores.remove(highest)
lowest = min(scores)
scores.remove(lowest)
# 计算平均分,保留2位小数
average = round(sum(scores)/len(scores), 2)formatter = '去掉一个最高分{0}\n去掉一个最低分{1}\n最后得分{2}'
print(formatter.format(highest, lowest, average))
(2)
while True:try:n = int(input('请输入评委人数:'))assert n > 2breakexcept:print('必须输入大于2的整数')maxScore, minScore = 0, 100
total = 0
for i in range(n):while True:try:score = float(input('请输入第{0}个评委的分数:'.format(i+1)))assert 0 <= score <= 100breakexcept:print('必须属于0到100之间的实数.')total += scoreif score > maxScore:maxScore = scoreif score < minScore:minScore = score
average = round((total-maxScore-minScore)/(n-2), 2)
formatter = '去掉一个最高分{0}\n去掉一个最低分{1}\n最后得分{2}'
print(formatter.format(maxScore, minScore, average))
最新文章
- NTTRU:兼容 NTT 算法的 NTRU
- MySQL 分区创建
- 关于笔记的保存问题
- ADC内部电源监控
- 打破语言壁垒,实现全球商贸:多语言多商户跨境商城源码引领电商新潮流
- JavaScript红宝书第8章:对象、类与面向对象编程(24)
- @Validated和@Valid 区别
- CNKI上最新硕士博士论文pdf格式文件owner密码找回难度
- MySQL为什么Spring的jdbcTemplate.batchUpdate()这么慢?
- Python算法——平衡二叉树(AVL)
- RK3568平台开发系列讲解(Linux系统篇)Linux内核定时器详解
- QML16、从 C++ 定义 QML 类型
- Spring Retry方法重试
- Cygwin工具制作Redis服务端Window版本
- EXTI (2)
- 2020年五一杯数学建模C题饲料混合加工问题解题全过程文档及程序
- Wpf 使用 Prism 实战开发Day05
- 跨国企业如何选择安全靠谱的跨国传输文件软件?
- Mac环境配置的相关知识
- APT攻击的特点及含义