РУҚА
16

Шешімі: Вывод рекурсивной функции

ЕГЭ · Информатика · Тапсырма 16 · Бағдарламалау негіздері
КүрделіФИПИEC21C2Қысқа жауап≈ 3 минутТалдау 4 қадамЖауап сверен с ключом
Условие

Ниже на пяти языках программирования записан рекурсивный алгоритм F. Запишите подряд без пробелов и разделителей все числа, которые будут выведены на экран при выполнении вызова F(4). Числа должны быть записаны в том же порядке, в котором они выводятся на экран.

Тапсырманы ашып, өзіңіз шешіңіз
Дальше ответЕгер әлі шешіп жатсаңыз – кеңестерден бастаңыз: олар жауапқа жетелейді, бірақ оны ашпайды.
К подсказкам

Шешім по шагам

4 қадам
1

При вызове F(4) сначала выводится 4, затем выполняются вызовы F(2) и F(3).

$$F(4) \to 4, F(2), F(3)$$
2

Вызов F(2) выводит 2, затем вызывает F(0) и F(1). Вызов F(0) ничего не выводит, а F(1) выводит 1.

$$F(2) \to 2, F(0), F(1) \to 21$$
3

Вызов F(3) выводит 3, затем вызывает F(1) и F(2). Вызов F(1) выводит 1, а F(2) выводит 2 и затем ещё 1.

$$F(3) \to 3, F(1), F(2) \to 3121$$

Объединяем результаты в порядке выполнения рекурсивных вызовов.

$$4\,21\,3121 = 4213121$$
Жауап
4213121
4213121
так ответ выглядит в бланке

Где здесь ошибаются

Записывают результат вызова F(n - 1) перед результатом F(n - 2).

Учитывают вывод при n = 0, хотя условие n > 0 не выполняется.

Пропускают рекурсивные вызовы внутри F(2) или F(3).

Закрепить приёмВ теме «Бағдарламалау негіздері» ещё 159 тапсырма — жауабымен және дәл осындай талдауымен.
Жаттығу

Тапсырманы қалай шешу керек 16 ЕГЭ, информатика

Бұл есептің талдауы келесіге бөлінген: 4 шага: видно, откуда берётся каждое число и где теряется балл. Жауап есептеулердің жанында келтірілген, олардың орнына емес.

Задача из темы «Бағдарламалау негіздері»: в ней 160 задач, и у каждой есть такой же разбор. Тіркеу қажет емес.