我必须创建一个程序来计算用户输入的一组值的平均值。用户将输入0作为标记值,以指示将不再提供其他值。如果用户输入的第一个值为0,则程序应显示适当的错误消息。
注意:用户输入的数量可能会有所不同。另外,0表示 输入不应包含在平均值中
x = int(input("Enter Values\n"))
num = 1
count = 0
sum = 0.0
if x == 0:
print("Program exits")
exit()
while (x>0):
sum += num
count += 1
avg = (sum/(count-1))
print("Average: {}".format(avg))
答案 0 :(得分:1)
您没有在while循环内输入。您已经在第一行上输入了一次。因此,您的程序不会重复输入。 您可能正在寻找-
sum = 0.0
count = 0
while(1):
x=int(input("Enter Values: "))
if x == 0:
print("End of input.")
break;
sum+=x;
count+=1;
if count == 0:
print("No input given")
else:
avg = sum/count;
print("Average is - ",avg)
答案 1 :(得分:0)
您的代码不起作用,因为int
函数只期望一个数字。
如果您一一插入数字,则以下代码有效:
num = int(input("Enter a value: "))
count = 0
sum = 0.0
if num <= 0:
print("Program exits")
exit()
while (num>=0):
sum += num
count += 1
num = int(input("Enter a value: "))
avg = (sum/count)
print(f"Average: {avg}")