Задание 16 ЕГЭ по информатике · 26ADAF

Порядок вывода рекурсивного алгоритмаПовышеннаяКЭС 3.7КЭС 3.16
Ниже записан рекурсивный алгоритм F на языке Python.

def F(n):
print(n, end='')
if n >= 2:
F(n - 2)
F(n - 1)
F(n - 2)


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

Показать ответ
3120101
Подсказки (3)
  1. Сначала функция выводит значение своего аргумента, а затем выполняет рекурсивные вызовы.
  2. При n≥2 вызовы выполняются в порядке F(n−2), F(n−1), F(n−2).
  3. Разверните вызовы: F(3)→3,F(1),F(2),F(1), затем отдельно раскройте F(2).
Решение
1. При вызове F(3) сначала выводится число 3. Затем выполняются вызовы F(1), F(2) и F(1).
F(3)→3,F(1),F(2),F(1)

2. Вызов F(1) выводит только число 1, так как условие n≥2 не выполняется.
F(1)→1

3. Вызов F(2) выводит 2, после чего выполняет вызовы F(0), F(1) и F(0).
F(2)→2,0,1,0

4. Собираем числа в порядке их вывода: 3, 1, 2, 0, 1, 0, 1.
3120101
Частые ошибки
  • Не учитывать повторный вызов F(n−2).
  • Записывать результат рекурсивного вызова после всех его вложенных вызовов.
  • Добавлять пробелы или разделители между числами.

Источник: Открытый банк ФИПИ

Похожие задания

16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 4: F(n - 3) F(n - 1)…Порядок вывода рекурсивного алгоритма · 1C457A16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 3: F(n // 2) F(n - 1)…Порядок вывода рекурсивного алгоритма · 1CCE5816Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 3: F(n - 1) F(n - 3)…Порядок вывода рекурсивного алгоритма · 1D337E16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 4: F(n - 1) F(n // 2)…Порядок вывода рекурсивного алгоритма · 28131C16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 2: print(n) F(n // 2) F(n - 1) Запишите…Порядок вывода рекурсивного алгоритма · 2D68B616Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: print(n) F(n - 4) F(n // 2) Запишите…Порядок вывода рекурсивного алгоритма · 35359C16Ниже записан рекурсивный алгоритм F на языке Python. def F(n): print(n, end='') if n >= 7: F(n - 1) F(n - 3)…Порядок вывода рекурсивного алгоритма · 3989D316Ниже записан рекурсивный алгоритм F на языке Python. def F(n): if n > 0: F(n - 3) print(n) F(n // 2) Запишите…Порядок вывода рекурсивного алгоритма · 4ABC65

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ЕГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.