In Python, how to get the sum and average while in a loop

风格不统一 提交于 2019-12-01 13:16:42

问题


I've managed to implement a loop but keep getting a syntax error when I try the sum function. I need the numbers input by the user to be totalled and the average given as well. This has to be outputted to the user. Could you please guide me on where to go from here, thank you.

This is what I've done so far:

while 1:
    NumCalc = input ("Enter Number :")
    if NumCalc == "done": break

回答1:


This is what you can do if you want to compute the sum and the mean after the loop ends:

nums = []
while 1:
    NumCalc = input ("Enter Number:")
    if NumCalc == "done": break
    nums.append(float(NumCalc))

print('Sum:', sum(nums), 'and average:', sum(nums)/len(nums))


While in a loop:
s = 0.0
counter = 0

while 1:
    NumCalc = input("Enter Number: ")
    if NumCalc == "done":
        break

    NumCalc = float(NumCalc)
    s += NumCalc
    counter += 1


    print('Sum is', s, 'and the mean is', s/counter)

Output:

Enter Number: 5
Sum is 5.0 and the mean is 5.0
Enter Number: 2
Sum is 7.0 and the mean is 3.5
Enter Number: 4
Sum is 11.0 and the mean is 3.66666666667
Enter Number: 6
Sum is 17.0 and the mean is 4.25
Enter Number: 2
Sum is 19.0 and the mean is 3.8



回答2:


i = 0
sum = 0
while 1:
    i += 1
    NumCalc = input ("Enter Number :")
    if NumCalc == "done": break
    sum = sum + NumCalc
    print "Average is ", sum/i


来源:https://stackoverflow.com/questions/22423426/in-python-how-to-get-the-sum-and-average-while-in-a-loop

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!