“У попа была собака…” Из
“У попа была собака…”
Из фольклора.
Трудно представить, что читатель, добравшийся до этого занятия и пишущий собственные программы, - будь то на языке Паскаль, либо на C, - ничего не знает о механизме рекурсии. Но и рискуя предположить подобное, мы уверены, что уж сталкиваться прежде с указанным механизмом ему приходилось. Так и в примере из эпиграфа мы имеем дело с рекурсией.
Фактически, в данном случае имеет место - в привычной для нас терминологии - бесконечный цикл.
Авторы любого курса программирования предупреждают начинающих о необходимой осторожности в работе с метками и инструкцией безусловного перехода:
{не делайте так!}
метка_1:
{набор инструкций, среди которых нет инструкции перехода}
goto метка_1
Но и отказ от goto, полный или максимально возможный, являющийся одним из принципов структурного программирования, не гарантирует безопасной жизни (отладки).
Так, замаскировав этот механизм в одеждах процедуры:
{пример на Паскале}
procedure Eternity;
Индекс
Элементарные функции
Линейные уравнения
Нелинейные уравнения
Случайные числа