【问题描述】请使用循环结构读入一组整数并存入列表中(整数取值范围从 −100 至 +100,整数的个数不定,大于或等于 1,读入空字符串表示输入结束)。之后首先输出其中的最大值、最小值和输入的第 n2(取整)个整数,其中 n 表示输入的行数(包括最后一个空字符串)。然后将列表排序,按从大到小的顺序拼接成字符串并输出(两个相邻的整数之间以空格分割)。提示:字符串拼接函数的输入列表只能由字符串构成。
【输入形式】第1行至第n-1行为一个整数(1≤n≤100),第n行为空字符
【输出形式】第一行为已输入整数的最大值;第二行为已输入整数的最小值;第三行为输入的第n/2个整数(直接保留整数,无需四舍五入);第四行为一行字符串,为从大到小排序后的整数,两个整数之间以空格分割。
代码如下:
if __name__ == '__main__':
x_list = []
while True:
x = input()
if len(x.strip()) == 0:
break
x_list.append(int(x))
print(max(x_list))
print(min(x_list))
n1 = len(x_list)
n2 = (n1 + 1) // 2
print(x_list[n2 - 1])
x_list.sort(reverse=True)
y_list = " ".join([str(e) for e in x_list])
print(y_list)
需要注意的是list.reverse()是将列表中所有元素位置反转,list.sort(reverse=True)决定列表元素按升序或是降序重新排序。