Тренажёр: рекурсивные функции
Функция задана через саму себя: есть база (сразу ответ) и рекурсивный шаг (вызов себя с меньшим аргументом). Найдите значение функции при заданном аргументе.
База и рекурсивный шаг
У рекурсии всегда две части. База — случай, когда функция не вызывает себя и сразу возвращает значение. Рекурсивный шаг — вызов себя с меньшим аргументом. К примеру, при — база, а при — шаг.
Путь к базе
Каждый шаг уменьшает аргумент, пока он не попадёт в базу. Значит, значение большого аргумента считается от базы наверх: число шагов умножаем на добавку и прибавляем значение на базе. Например, .
Если функция кусочная
Иногда шаг зависит от чётности аргумента: для чётного одно правило, для нечётного другое. Тогда просто идём от нужного аргумента к базе по подходящей строчке; много шагов удобно посчитать короткой программой.
Как пользоваться этим режимом. Выберите уровень, прочитайте определения функций, найдите базу и посчитайте число шагов до неё. Введите ответ целым числом. Если трудно — откройте «Показать решение».