experts.
I'm trying to define a function (collatz
) that:
- Asks for a number. If it is even it prints
number // 2
, if it odd it prints3 * number + 1
. (OK) - The result, whatever it is, must enter a loop until the result is 1. (NOK)
So, i´m not figure out because the result is not used and is in an infinite loop. Any suggestion?
def collatz():
number = int(input('Enter the number: '))
x = number % 2
while number != 1:
if x == 0:
print(f'{number // 2}')
else:
print(f'{3 * number + 1}')
number = number
print(f'{collatz()}')