Порядок рекурсивных вызовов
Ниже на пяти языках программирования записан рекурсивный алгоритм $F$. При $n > 0$ алгоритм сначала выводит значение $n$, затем вызывает $F(n - 4)$, а после этого — $F(\lfloor n/2 \rfloor)$. Запишите подряд без пробелов и разделителей все числа, которые будут напечатаны на экране при выполнении вызова $F(8)$. Числа должны быть записаны в том же порядке, в котором они выводятся на экран.
Условие как в банке ФИПИ — открыть и сверить
|
Ниже на пяти языках программирования записан рекурсивный алгоритм F.
Запишите подряд без пробелов и разделителей все числа, которые будут напечатаны на экране при выполнении вызова F(8). Числа должны быть записаны в том же порядке, в котором они выводятся на экран. | ||||||||||||
| | ||||||||||||
Формат: число или слово без единиц измерения; дробную часть отделяйте запятой.
1Мягкая — с чего смотретьуровень 1 из 3
Какое число выводится первым при вызове $F(8)$ и какие два рекурсивных вызова выполняются после этого?
2Наводящая — какие числа считатьуровень 2 из 3
Для каждого положительного $n$ порядок действий таков: вывести $n$, выполнить $F(n-4)$, затем выполнить $F(\lfloor n/2 \rfloor)$.
3Прямая — фактически решениеуровень 3 из 3
Вызов $F(8)$ даёт $8$, затем два одинаковых вызова $F(4)$. Каждый вызов $F(4)$ выводит последовательность $4, 2, 1$.