Задание 16 ЕГЭ по информатике · B701D0
Порядок вывода рекурсивного алгоритмаПовышеннаяКЭС 3.7КЭС 3.16
Ниже записан рекурсивный алгоритм F на языке Python.
Запишите подряд без пробелов и разделителей все числа, которые будут выведены на экран при выполнении вызова F(4). Числа должны быть записаны в том же порядке, в котором они выводятся на экран.
def F(n):
if n > 0:
F(n - 2)
F(n - 1)
print(n)Запишите подряд без пробелов и разделителей все числа, которые будут выведены на экран при выполнении вызова F(4). Числа должны быть записаны в том же порядке, в котором они выводятся на экран.
Показать ответ
1211234
Подсказки (3)
- В каком порядке выполняются два рекурсивных вызова и команда вывода числа n?
- Сначала вычисляются F(n−2), затем F(n−1), и только после этого выводится n.
- Получите: F(1)=1, F(2)=12, F(3)=1123, затем объедините выводы F(2), F(3) и число 4.
Решение
1. При n≤0 функция ничего не выводит. Поэтому F(1) сначала вызывает F(−1) и F(0), а затем выводит 1. F(1)=1 2. Вызов F(2) сначала выполняет F(0), затем F(1) и после этого выводит 2. F(2)=1 2=12 3. Вызов F(3) выполняет F(1), затем F(2), а затем выводит 3. F(3)=1 12 3=1123 4. Вызов F(4) выполняет F(2), затем F(3), а затем выводит 4. F(4)=12 1123 4=1211234
Частые ошибки
- Вывести число n до рекурсивных вызовов.
- Не учитывать вывод числа после завершения обоих рекурсивных вызовов.
- Разделить полученную последовательность пробелами или запятыми.
Источник: Открытый банк ФИПИ
Похожие задания
16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: print(n) F(n - 1) F(n - 2) Запишите…Порядок вывода рекурсивного алгоритма · 914B1816Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: F(n - 4) F(n // 2) print(n) Запишите…Порядок вывода рекурсивного алгоритма · 93363516Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: print(n) F(n // 3) F(n - 2) Запишите…Порядок вывода рекурсивного алгоритма · 963C1F16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: F(n - 3) F(n // 2) print(n) Запишите…Порядок вывода рекурсивного алгоритма · A75BAE16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: print(n) F(n - 3) F(n // 2) Запишите…Порядок вывода рекурсивного алгоритма · E508E816Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 2: F(n // 2) F(n - 1) print(n) Запишите…Порядок вывода рекурсивного алгоритма · E6C89216Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: print(n) F(n - 2) F(n - 1) Запишите…Порядок вывода рекурсивного алгоритма · EC21C216Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 3: F(n - 1) F(n - 1)…Порядок вывода рекурсивного алгоритма · F7CF49
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ЕГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.