"""
Встроенная функция input позволяет ожидать и возвращать данные из стандартного
ввода в виде строки (весь введенный пользователем текст до нажатия им enter).
Используя данную функцию, напишите программу, которая:

1. После запуска предлагает пользователю ввести текст.
2. Проверяет и, если возможно, преобразовывает полученный текст в число,
используя рекурсивную функцию.
Если число четное - делит его на 2 и выводит результат.
Если число нечетное - умножает на 3 и прибавляет 1.
После чего ждет следующего ввода.
3.При получении в качестве вводных данных 'cancel' завершает свою работу.

Пример:

-> Привет123
Не удалось преобразовать введенный текст в число.
-> 2
1
-> 3
10
-> Два
Не удалось преобразовать введенный текст в число.
-> cancel
Bye!

"""
def my_int(str):
    digit = True
    for i in str:
        try:
            if int(i):
                pass
        except:
            digit = False
    if digit == True:
        s = int(str)
        if s % 2 == 0:
            print(s // 2)
        else:
            print(s * 3 + 1)
    else:
        print("Не удалось преобразовать введенный текст в число.")
    return

while (text:= input("Введите число:") ) != 'cancel':
    my_int(text)
print("Bye!")