Реті рекурсивных вызовов
Ниже записан рекурсивный алгоритм $F$. При выполнении вызова $F(8)$ определите последовательность чисел, которые будут напечатаны на экране.
1def F(n): 2 if n > 0: 3 F(n - 4) 4 F(n // 2) 5 print(n)
Условие как в банке ФИПИ — открыть и сверить
|
Ниже на пяти языках программирования записан рекурсивный алгоритм F.
Запишите подряд без пробелов и разделителей все числа, которые будут напечатаны на экране при выполнении вызова F(8). Числа должны быть записаны в том же порядке, в котором они выводятся на экран. | ||||||||||||
| | ||||||||||||
Формат: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
1Мягкая — с чего смотретьдеңгей 1 из 3
Какой вызов выполняется первым внутри функции: $F(n-4)$ или $F(n \mathbin{//} 2)$?
2Жетекші — қандай сандарды есептеудеңгей 2 из 3
Число $n$ выводится только после завершения обоих рекурсивных вызовов.
3Тікелей — іс жүзінде шешімдеңгей 3 из 3
Для $F(8)$ сначала получите вывод $F(4)$, затем повторно вычислите $F(4)$ из второго вызова и в конце добавьте число $8$.