python 从键盘输入若干个同学的计算机成绩存入列表中,成绩范围0- 120,若超过这个范围则结束输入。将这些同学的计算机成绩平均 值、 最小值和最大值组成元组输出,如果没有正确成绩输入则输 出空元组。
时间: 2023-06-06 07:06:25 浏览: 125
可以回答这个问题。
以下是代码实现:
```
grades = []
while True:
grade = input("请输入同学的计算机成绩,范围为0-120,输quit结束输入:")
if grade == "quit":
break
grade = int(grade)
if grade < 0 or grade > 120:
break
grades.append(grade)
if len(grades) > 0:
avg_grade = sum(grades) / len(grades)
min_grade = min(grades)
max_grade = max(grades)
result = (avg_grade, min_grade, max_grade)
print(result)
else:
print(())
```
以上代码首先定义了一个空列表 grades,然后使用 while 循环从键盘输入同学的计算机成绩。如果输入 quit,则退出循环;如果输入的成绩不在范围内,则同样退出循环。如果输入的成绩正确,则将其添加到 grades 列表中。
循环结束后,首先判断 grades 列表中是否有成绩。如果有,则计算平均值、最小值和最大值,并组成元组 result 输出;如果没有,则输出空元组。
相关问题
从键盘输入若干个同学的计算机成绩存入列表中,成绩范围0-120,若超过这个范围则结束输入。将这些同学的计算机成绩平均值、最小值和最大值组成元组输出,如果没有正确成绩输入则输出空元组
可以回答,以下是代码实现:
```python
scores = []
while True:
score = input("请输入计算机成绩(0-120),输入q结束:")
if score == 'q':
break
score = int(score)
if score < 0 or score > 120:
break
scores.append(score)
if len(scores) == 0:
result = ()
else:
average = sum(scores) / len(scores)
max_score = max(scores)
min_score = min(scores)
result = (average, max_score, min_score)
print(result)
```
如果您还有其他问题,可以继续提出。
从键盘输入若干个同学的计算机成绩存入列表中,成绩范围0- 120,若超过这个范围则结束输入。将这些同学的计算机成绩平均值、最小值和最大值组成元组输出,如果没有正确成绩输入则输出空元组。
好的,我明白了。以下是回答您的问题:
请参考以下代码实现:
```python
# 初始化一个空列表
scores = []
# 循环读取输入,判断成绩是否在范围内,不在范围内则结束循环
while True:
score = input("请输入同学的计算机成绩:")
if not score:
break
score = int(score)
if score < 0 or score > 120:
break
scores.append(score)
# 如果列表为空则表示没有正确成绩输入
if not scores:
result = ()
else:
result = (round(sum(scores)/len(scores), 2), min(scores), max(scores))
print(result)
```
这段代码实现了从键盘输入同学的计算机成绩,将其存储在列表中,当输入的成绩超过0-120的范围时,结束输入。接着计算出平均值、最小值和最大值,并将它们组成元组输出。如果没有正确成绩输入,则输出空元组。
希望这个回答可以帮助您。如果您还有其他问题或需要进一步的帮助,请随时告诉我。
阅读全文