Рекурсивні функції

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Ситуація, при якій функція багаторазово викликає сама себе, поки не буде виконано деякий умова, відкриває чудові можливості. При правильному використанні рекурсивні функції зменшують обсяг програми і роблять її більш виразною. Рекурсивні функції особливо часто використовуються при виконанні повторюваних дій - наприклад, при пошуку в файлах / масивах та побудові графічних зображень (наприклад, фракталов). Класичним прикладом рекурсивних функцій, що зустрічаються в багатьох курсах програмування, є підсумовування чисел від 1 до N. Програма, що приведена в прикладі, підсумовує всі цілі числа від 1 до 10.
Приклад. Використання рекурсивної функції для підсумовування послідовних цілих чисел

function summation ($ count) (
if ($ count! = 0):
return $ count + summation ($ count-1);
endif;
)
$ Sum = summation (10);
print "Summation = $ sum";

В результаті виконання лістингу 4.5 буде виведений наступний результат:

Summation = 55