Я думаю, что гипотеза Коллатца уже известна. Но что, если мы изменим правила?
Начните с целого числа n> = 1.
Повторите следующие шаги:
Если n четное , умножьте его на 3 и добавьте 1.
Если n нечетно , вычтите 1 и разделите его на 2.
Стоп, когда он достигает 0
Распечатайте повторяющиеся числа.
Тестовые случаи:
1 => 1, 0
2 => 2, 7, 3, 1, 0
3 => 3, 1, 0
10 => 10, 31, 15, 7, 3...
14 => 14, 43, 21, 10, ...
Правила:
Эта последовательность не работает для большого числа чисел, потому что она входит в бесконечный цикл. Вам не нужно обрабатывать эти случаи. Достаточно только распечатать приведенные выше контрольные примеры.
Я предложил вычесть 1 и разделить на два, чтобы получить действительное целое число для продолжения, но это не требуется для вычисления таким образом. Вы можете разделить на 2 и привести к целому числу или любым другим методам, которые дадут ожидаемый результат.
Вам также необходимо распечатать начальный ввод.
Выходные данные не должны быть отформатированы как контрольные примеры. Это было просто предложение. Тем не менее, повторный порядок должен соблюдаться.
Наименьший код выигрывает.
0
в конце?