在某个演讲比赛中,若干评委要给选手评分,评分规则是去掉一个最高分和一个最低分,求出剩下分数的平均分。 输入格式: 若干个评委的打分,分数之间有一个空格,打分是可以带有小数部分的。 输出格式: 最高分、最低分、平均分均保留两位小数.请你用python写出这个程序
时间: 2024-12-20 21:24:21 浏览: 10
Java歌手比赛评委打分-按照设计好的流水线去掉一个最高分和一个最低分计算出平均成绩.docx
在Python中,你可以使用列表来存储评委的打分,然后通过内置函数计算最高分、最低分和平均分。这里是一个简单的解决方案:
```python
def calculate_scores(scores_string):
# 将字符串转换成包含整数或浮点数的列表
scores = list(map(float, scores_string.split()))
# 按照默认升序排列得分
sorted_scores = sorted(scores)
# 取出最高分和最低分
max_score = sorted_scores[-1]
min_score = sorted_scores[0]
# 去掉最高分和最低分,再计算剩余分数的平均值
valid_scores = sorted_scores[1:-1]
average_score = sum(valid_scores) / len(valid_scores)
# 返回结果,保留两位小数
return round(max_score, 2), round(min_score, 2), round(average_score, 2)
# 使用示例
scores_input = input("请输入评委的打分,例如:95 88 92 76 89")
max_score, min_score, avg_score = calculate_scores(scores_input)
print(f"最高分:{max_score},最低分:{min_score},平均分:{avg_score}")
```
当你运行这个程序并输入评委的打分时,它会按照规则计算并显示最高分、最低分和平均分。
阅读全文