Информатика • 9 класс
293

Рекурсия (Паскаль)

  • Рекурсивная функция или процедура — это подпрограмма, которая вызывает сама себя напрямую или через другие подпрограммы.
  • Такой способ описания функции называется рекурсия.
  • Рекурсивная функция обязательно должна содержать в себе условие окончания рекурсивности, чтобы не вызвать зацикливания программы. Например, вызов функции внутри неё самой можно разместить в операторе if.
  • Любую рекурсивную функцию можно записать без рекурсии с помощью цикла.
  • Программный код с рекурсией изящнее и проще для понимания, но занимает больше памяти и дольше выполняется.
  • С применением рекурсии уменьшается время выполнения функции и объём кода.
  • Пример. Вычислите факториал числа N:

    𝑁!=1, 𝑁=1𝑁·𝑁1!, 𝑁>1

    Решение.

    function fact (n: byte): real;

    begin

    if (n <= 1) then fact:= 1

    else

      fact:= fact (n - 1) * n;

    end;

Было полезно?

Рекомендуем

Вы учитель или ученик?
Познакомьтесь с нашим образовательным онлайн-сервисом с тысячами интерактивных работ
Учителю
Удобно проводить уроки в классе, назначать работы на дом и анализировать результаты всего класса или конкретных учеников
Ученику
Самостоятельно изучать новые и повторять пройденные темы, готовиться по индивидуальной траектории и оценивать результаты на наглядных графиках
Зарегистрироваться в «Облаке знаний»