一串系列要去掉最大的和第二大的 最小的和第二小的 求最大值最小值和平均值怎么求
存列表中,然后对列表排序后,去掉最大的和第二大的 最小的和第二小的。
list=[]
while True:
str=input('Enter a number (blank to exit):')
if not str:
break
list.append(int(str))
max=list[2]
min=list[2]
sum=0
for i in range(2,len(list)-2):
if(list[i]>max):
max=list[i]
if(list[i]<min):
min=num
sum+=list[i]
print('Minimum:',min)
print('Maximum:',max)
print('Mean:',round(sum/(len(list)-4),2))
你题目的解答代码如下:
li = []
while True:
s = input('Enter a number (blank to exit):')
if s == "":
break
li.append(int(s))
li.remove(max(li)) #去掉最大的
li.remove(max(li)) #去掉第二大的
li.remove(min(li)) #去掉最小的
li.remove(min(li)) #去掉第二小的
print(f'Minimum: {min(li):.1f}')
print(f'Maximum: {max(li):.1f}')
print(f'Mean: {sum(li)/len(li):.1f}')
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
这样?
numbers = 0
lst = [] # 列表长度要大于等于4
while True:
number = input("输入数字(按换行退出):")
if number != "":
lst.append(int(number))
else:
break
lst.sort()
lst.remove(lst[0])
lst.remove(lst[0])
lst.pop()
lst.pop()
print(sum(lst)/len(lst)) # 求平局值
首先进行排序,去掉前两个 和末尾后两个 然后 求和就可以了