Рекурсия, то есть способ написание алгоритма используя вызывающую себя функцию, часто рассматривается как что-то почти магическое. На самом-же деле — это весьма простой подход к написанию многих программ.