输入一个正整数n (n>4),再输入n个实数,求出歌手的得分(保留2位小数)。设一歌唱评奖晚会上有n(n>4)个评委为歌手打分
时间: 2023-04-10 08:04:38 浏览: 153
可以使用以下代码来解决这个问题:
```
n = int(input())
scores = []
for i in range(n):
score = float(input())
scores.append(score)
scores.sort()
total_score = sum(scores[1:-1])
average_score = total_score / (n - 2)
print("%.2f" % average_score)
```
这段代码首先读取输入的正整数n,然后使用一个循环读取n个实数,并将它们存储在一个列表中。接下来,将列表中的分数从小到大排序,并计算除去最高分和最低分后的总分数。最后,将总分数除以剩余评委的数量,得到歌手的平均得分,并将其保留两位小数输出。
相关问题
用python输入一个正整数n (n>4),再输入n个实数,求出歌手的得分(保留2位小数)。设一歌唱评奖晚会上有n(n>4)个评委为歌手打分.评分规则:每个评委依次打分,再去掉2个最高分和2个最低分,计算余下的分数平均值为歌手的得分. 输入格式: 在第一行中输入n 在第二行中输入n个分数
好的,我知道了。下面是Python代码实现:
```python
n = int(input("请输入一个正整数n(n>4):"))
scores = list(map(float, input("请输入n个实数,用空格分隔:").split()))
if n <= 4:
print("评委人数不足5人,无法计算得分!")
else:
scores.sort() # 将分数从小到大排序
sum_score = sum(scores[2:-2]) # 去掉最高分和最低分后的分数总和
avg_score = sum_score / (n - 4) # 计算平均分
print("歌手得分为:{:.2f}".format(avg_score))
```
注意:这里假设输入的所有分数都是合法的实数,没有进行输入校验。如果需要的话,可以在代码中添加输入校验的逻辑。
用python输出:输入一个正整数n (n>4),再输入n个实数,求出歌手的得分(保留2位小数)。设一歌唱评奖晚会上有n(n>4)个评委为歌手打分.评分规则:每个评委依次打分,再去掉2个最高分和2个最低分,计算余下的分数平均值为歌手的得分. 输入格式: 在第一行中输入n 在第二行中输入n个分数 输出格式: 在一行中输出平均分数
以下是代码实现:
```python
n = int(input()) # 输入正整数n
scores = list(map(float, input().split())) # 输入n个实数,并将其转换成浮点数列表
scores.sort() # 排序
scores = scores[2:-2] # 去掉2个最高分和2个最低分
avg_score = sum(scores) / len(scores) # 计算平均分数
print("%.2f" % avg_score) # 保留2位小数并输出
```
解释:
首先输入正整数 n,然后输入 n 个实数,并将其转换成浮点数列表。使用 sort() 方法对列表进行排序,然后使用列表切片语法去掉 2 个最高分和 2 个最低分。
接着计算余下分数的平均值作为歌手的得分,使用格式化字符串将结果保留 2 位小数并输出。
阅读全文