As a practice exercise, I am trying to get five numbers from a user and return the sum of all five number using a while loop. I managed to gather the five numbers, but the sum is not provided by my code (I get a number, but it is always double the last number). I believe the issue is with my use of +=.
x = 0
while x < 5:
x += 1
s = (int(raw_input("Enter a number: ")))
s += s
print s
you could do this also
Gruszczy already solved your main problem, but here is some advice relevant to your code.
First, it's easier to do a
for
loop rather than keep track of iterations in awhile
:Second, you can simplify it using the built-in
sum
function:Third, both of the above will fail if the user enters invalid input. You should add a
try
block to take care of this:Or if you want to force 5 valid numbers:
Adding str or int by user_input & then printing the result - Adding 2 or more no's from users input
example from the abv link
This should be better.
You were putting one of the results on to the sum of all results and lost the previous ones.