ПРОЦЕДУРА РЕКУРСИВНАЯ
— процедура в программировании, в описании которой содержится явное обращение к ней самой непосредственно или с помощью другой процедуры. Использование П. р. во многих случаях позволяет придавать алгоритмам компактную и наглядную форму. П. р., в частности, используются для описания алгоритмов вычисления значений ф-ций, задаваемых рекуррентными соотношениями, напр.:
1) вычисление факториала
;
2) вычисление чисел Фибоначчи
Однако использование П. р. связано с многократным (рекурсивным) входом в процессе выполнения программы в один и тот же блок до выхода из него. Число рекурсивных входов наз. уровнем рекурсии. На разных уровнях рекурсии одинаковые величины, локализованные в блоке, имеют, вообще говоря, разные значения. Эта особенность П. р. затрудняет их реализацию.
Во многих языках программирования
допускается также рекурсивное обращение к процедурам, при котором
оператор процедуры в качестве параметра фактического содержит идентификатор этой же процедуры, а соответствующий параметр формальный вызывается по наименованию. Напр., в АЛГОЛе-60 обращение
к процедуре
рекурсивно, если параметр х вызывается по наименованию. А. И. Халилов.