im having problems and need help
Robert Towne <[email protected]>
| Newsgroups | gmane.comp.python.tutor |
|---|---|
| Message-ID | <CAE4C4v4GjrhKJPqgdhsA3xRMB-FYq6RKRaD_H9fsp4U13mJKjA@mail.gmail.com> |
Im having problems understanding this. Im running the while loop like it says; and it doesnt complete the loop. My question is, is it the formula thats wrong or my math. The % sign means to square the number? since i the to the second power is 64. Then it should return false. IDK what I am doing wrong, if you could help me understand where I am going wrong i would appreciate it thank you. def is_power_of_two(number): # This while loop checks if the "number" can be divided by two # without leaving a remainder. How can you change the while loop to # avoid a Python ZeroDivisionError? while number % 2 == 0: number = number / 2 # If after dividing by 2 "number" equals 1, then "number" is a power # of 2. if number == 1: return True return False # Calls to the function print(is_power_of_two(0)) # Should be False print(is_power_of_two(1)) # Should be True print(is_power_of_two(8)) # Should be True print(is_power_of_two(9)) # Should be False _______________________________________________ Tutor maillist - [email protected] To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor