Жауабы: Рекурсивный вывод чисел
Это официальный ключ тапсырмаға, источник — ФИПИ тапсырмаларының ашық банкі. Свой ответ можно сверить на странице тапсырма.
Бланкке: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
Ниже на пяти языках программирования записан рекурсивный алгоритм $F$. При $n > 0$ алгоритм сначала вызывает $F(n - 3)$, затем $F(\lfloor n / 2 \rfloor)$, после чего выводит значение $n$. Запишите подряд без пробелов и разделителей все числа, которые будут выведены на экран при выполнении вызова $F(7)$. Числа должны быть записаны в том же порядке, в котором они выводятся на экран.
1def F(n): 2 if n > 0: 3 F(n - 3) 4 F(n // 2) 5 print(n)
Где здесь ошибаются
Выводить число до выполнения рекурсивных вызовов.
Заменять целочисленное деление $n // 2$ обычным делением.
Учитывать вызовы с нулевым или отрицательным аргументом как выводящие числа.