为什么我的循环在输入输入后结束?
Why does my loop end after the input is entered?
作业题为:“写一个程序,读取不定数量的整数,判断读取了多少个正负值,并计算总和
和输入值的平均值(不包括零)。你的程序以
输入 0。将平均值显示为浮点数。"
positive = 0
negative = 0
total = 0
count = 0
number = eval(input("Enter an integer, the input ends if it is 0:"))
while number != 0:
total += number
count += 1
if number > 0:
positive += 1
elif number < 0:
negative += 1
else:
break
average = total/count
print("The number of positives is", positive)
print("The number of negatives is", negative)
print("The total is", total)
print("The average is", average)
输入数字后,程序不输出任何其他内容。
您需要继续提示输入数字,直到输入零。一个简单的方法是将你的数字放入一个列表中,然后你可以从最后计算不同的统计数据:
numbers = []
while not numbers or numbers[-1] != 0:
numbers.append(int(input("Enter an integer, the input ends if it is 0: ")))
numbers.pop() # discard the 0
print("The number of positives is", sum(n > 0 for n in numbers))
print("The number of negatives is", sum(n < 0 for n in numbers))
print("The total is", sum(numbers))
print("The average is", sum(numbers) / len(numbers))
Write a program that reads an unspecified number of integers
这意味着您必须反复从用户那里获取数字输入,但是使用 input() 一次实际上只会输入一个数字。
所以你应该在 while 循环中输入你的号码,例如:
while True:
number = int(input("Enter an integer, the input ends if it is 0:"))
total += number
count += 1
if number > 0:
positive += 1
elif number < 0:
negative += 1
elif number == 0:
break
作业题为:“写一个程序,读取不定数量的整数,判断读取了多少个正负值,并计算总和 和输入值的平均值(不包括零)。你的程序以 输入 0。将平均值显示为浮点数。"
positive = 0
negative = 0
total = 0
count = 0
number = eval(input("Enter an integer, the input ends if it is 0:"))
while number != 0:
total += number
count += 1
if number > 0:
positive += 1
elif number < 0:
negative += 1
else:
break
average = total/count
print("The number of positives is", positive)
print("The number of negatives is", negative)
print("The total is", total)
print("The average is", average)
输入数字后,程序不输出任何其他内容。
您需要继续提示输入数字,直到输入零。一个简单的方法是将你的数字放入一个列表中,然后你可以从最后计算不同的统计数据:
numbers = []
while not numbers or numbers[-1] != 0:
numbers.append(int(input("Enter an integer, the input ends if it is 0: ")))
numbers.pop() # discard the 0
print("The number of positives is", sum(n > 0 for n in numbers))
print("The number of negatives is", sum(n < 0 for n in numbers))
print("The total is", sum(numbers))
print("The average is", sum(numbers) / len(numbers))
Write a program that reads an unspecified number of integers
这意味着您必须反复从用户那里获取数字输入,但是使用 input() 一次实际上只会输入一个数字。
所以你应该在 while 循环中输入你的号码,例如:
while True:
number = int(input("Enter an integer, the input ends if it is 0:"))
total += number
count += 1
if number > 0:
positive += 1
elif number < 0:
negative += 1
elif number == 0:
break