Всем привет.
Есть задача:
Напишите функцию с именем collatz (), которая имеет один аргумент с именем number. Если число четное, то collatz () должно напечатать number // 2 и вернуть это значение.
Если число нечетное, то collatz () должно напечатать и вернуть 3 * number + 1.
Затем сделайте так, чтобы пользователь мог ввести целое число и нажать Enter. После этого вызовется функция collatz () и будет выполняться, пока результат не будет равен 1.
Написал этот код:# Передаём переменной number введённое значение
number = int(input())
# Затем функция collatz() выполняет действие над этим числом
def collatz(number):
if number % 2 == 0:
return number // 2
elif number % 2 == 1:
return 3 * number + 1
# После этого функция отобразит результат на экран
print(collatz(number))
Оно понятно, что я введу любое число и получу только один результат, а надо как в задаче. Не могу понять, какой надо использовать цикл для этого.
Результат должен быть таким, если введём 3:
3
10
5
16
8
4
2
1