Итак зацикливание в программировании - это ситуация, когда цикл написан таким образом ,что условия выхода из него не выполняется. Рассмотрим зацикливание в операторах цикла for,while и repeat . Справедливости ради все варианты будут рассмотрены в Turbo Pascal и PascalABC. Также будет добавлен оператор write для вывода результатов.Зацикливание в forВообще идея зацикливания проста : необходимо всего-то в каждом шаге цикла уменьшать оператор шага на 1 (i:=i-1;) . Однако именно такая реализация возможна не везде. Рассмотрим простой пример.for i:=1 to 5 do begini:=i-1;write(i);end.Казалось бы все просто,да не тут то было.В то время как в Turbo Pascal все проходит на ура,в PascalABC такое не возможно и для зацикливания необходимо использовать оператор goto.label m;var i:integer;beginm:for i:=1 to 5 do beginwrite(i);if i=2 then goto m; end;end.Зацикливание в while Напомню,что в операторе while шаг цикла необходимо добавлять самостоятельно. Поэтому произвести зацикливание проще всего : нужно только убрать шаг циклаvar i:integer;begini:=0;while i<>1 do write(i);end.Оба компилятора адекватно реагируют на пропуск шага.Зацикливание в repeatДля создание бесконечного цикла в этом случае, как и предыдущем, достаточно не указывать шаг циклаvar i:integer;begini:=0;repeat write(i);until i=1;end.
тут вам приведены различные варианты для создание бесконечного цикла. Однако запомните,что зацикливание создает нагрузку и вообще редко используется. Гораздо чаще применяют неполное зацикливание при котором выход из цикла все же совершается.