Alterna · учебный материал
Функции и рекурсия
Глава 39: программирование: функции, подпрограммы и рекурсия. Короткие объяснения, схемы, трассировка и практика.
Что в этом материале
- Диспетчер миссий
- Маршрут главы
- Функции и параметры
- Локальные переменные и стек вызовов
- Рекурсивные алгоритмы
- Практикум
- Проверка навыка
- Python-студия
Содержание и основные понятия
Функция изолирует подзадачу, стек хранит незавершённые вызовы, а рекурсия превращает определение через меньший аргумент в программу.
суть и практика
11 класс
ЕГЭ №16
ALT
Диспетчер миссий
Каждый рекурсивный вызов получает собственные параметр и локальную переменную. Листайте миссии, чтобы увидеть кадры стека до и после
return
.
Глубина миссии
def mission(level):
fuel = level * 2
if level == 0: return 1
return fuel + mission(level - 1)
01
Маршрут главы
Три темы открыты сразу. Практикум и экзамен проверяют не угадывание, а устойчивый навык анализа и написания кода.
39.1 · теория и трасса
Функции и параметры
Функция получает аргументы, создаёт локальные параметры и возвращает значение. Вызов можно использовать внутри более крупного выражения.
Открыть тему →
39.2 · теория и трасса
Локальные переменные и стек вызовов
Каждый вызов получает отдельный кадр стека со своими параметрами и локальными переменными. После return кадр удаляется.
Открыть тему →
39.3 · теория и трасса
Рекурсивные алгоритмы
Рекурсивная функция содержит базовый случай и переход к меньшей задаче. Ответ собирается при обратном сворачивании стека.
Открыть тему →
39.4 · практика
Практикум
Двадцать диагностических вопросов с четырьмя исходами и восемь программных задач со дополнительными тестами.
Начать тренировку →
39.5 · контроль
Проверка навыка
Таймер не сбрасывается при перезагрузке, правильность скрыта до завершения, программная задача обязательна.
Открыть вариант →
39.6 · авторский код
Python-студия
Выбери задачу, измени алгоритм и пройди видимые и скрытые тесты в изолированном runtime.
Открыть студию →