multiple_one = 3.0
multiple_two = 5.0
multiple_answer = 1
while ( multiple_answer < 1000):
number_of_multiples = 0
checking_multiple = 1000.0
if (checking_multiple / multiple_one).is_integer:
number_of_multiples += 1
elif (checking_multiple / multiple_one).is_integer:
number_of_multiples += 1
checking_multiple -= 1
print number_of_multiples
My code is suppose to print out how many multiples there are but keeps failing. Why is that ?
Your program is getting stuck in an infinite loop. You start looping here:
while ( multiple_answer < 1000):
but never update multiple_answer
so your loop never finishes.
You are never changing multiple_answer
so it is always less than 1000 so you are stuck in an infinite loop in the while statement. Do you want to count the number of times you multiplied? If so, you want to change
multiple_one = 3.0
multiple_two = 5.0
multiple_answer = 1
while ( multiple_answer < 1000):
number_of_multiples = 0
checking_multiple = 1000.0
if (checking_multiple / multiple_one).is_integer:
number_of_multiples += 1
elif (checking_multiple / multiple_one).is_integer:
number_of_multiples += 1
checking_multiple -= 1
print number_of_multiples
to be:
multiple_one = 3.0
multiple_two = 5.0
multiple_answer = 1
while ( number_of_multiples < 1000):
checking_multiple = 1000.0
if (checking_multiple / multiple_one).is_integer:
number_of_multiples += 1
elif SOMETHING_DIFFERENT:
SOMETHING_ESLE_DIFFERENT
print number_of_multiples
This way you are not resetting number_of_multiples
in each iteration and you are checking the while loop against something that is changing based on the iteration.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.