Учебники

Perl — Петли

Может возникнуть ситуация, когда вам нужно выполнить блок кода несколько раз. В общем случае операторы выполняются последовательно: первый оператор в функции выполняется первым, затем второй и так далее.

Языки программирования предоставляют различные управляющие структуры, которые допускают более сложные пути выполнения.

Оператор цикла позволяет нам выполнять оператор или группу операторов несколько раз, и в большинстве языков программирования ниже приводится общая форма инструкции цикла.

Loop Architecture в Perl

Язык программирования Perl предоставляет следующие типы циклов для обработки требований циклов.

Sr.No. Тип и описание петли
1 в то время как цикл

Повторяет оператор или группу операторов, пока данное условие выполняется. Он проверяет условие перед выполнением тела цикла.

2 до цикла

Повторяет оператор или группу операторов, пока данное условие не станет истинным. Он проверяет условие перед выполнением тела цикла.

3 для цикла

Выполняет последовательность операторов несколько раз и сокращает код, который управляет переменной цикла.

4 цикл foreach

Цикл foreach выполняет итерацию по обычному значению списка и устанавливает переменную VAR для каждого элемента списка по очереди.

5 делать … пока цикл

Как оператор while, за исключением того, что он проверяет условие в конце тела цикла

6 вложенные циклы

Вы можете использовать один или несколько циклов внутри любого другого цикла while, for или do.. while.

Повторяет оператор или группу операторов, пока данное условие выполняется. Он проверяет условие перед выполнением тела цикла.

Повторяет оператор или группу операторов, пока данное условие не станет истинным. Он проверяет условие перед выполнением тела цикла.

Выполняет последовательность операторов несколько раз и сокращает код, который управляет переменной цикла.

Цикл foreach выполняет итерацию по обычному значению списка и устанавливает переменную VAR для каждого элемента списка по очереди.

Как оператор while, за исключением того, что он проверяет условие в конце тела цикла

Вы можете использовать один или несколько циклов внутри любого другого цикла while, for или do.. while.

Заявления о контроле цикла

Операторы управления циклом изменяют выполнение от его нормальной последовательности. Когда выполнение покидает область действия, все автоматические объекты, созданные в этой области, уничтожаются.

Perl поддерживает следующие операторы управления. Нажмите на следующие ссылки, чтобы проверить их детали.

Sr.No. Контрольное заявление и описание
1 следующее заявление

Заставляет петлю пропускать оставшуюся часть своего тела и немедленно проверять свое состояние перед повторением.

2 последнее заявление

Завершает оператор цикла и передает выполнение в оператор, следующий сразу за циклом.

3 продолжить заявление

Продолжение BLOCK, оно всегда выполняется непосредственно перед тем, как условная оценка собирается снова быть оценена.

4 повторить заявление

Команда redo перезапускает блок цикла без повторной оценки условия. Блок продолжения, если он есть, не выполняется.

5 Перейти к заявлению

Perl поддерживает команду goto в трех формах: метка goto, выражение goto и goto & name.

Заставляет петлю пропускать оставшуюся часть своего тела и немедленно проверять свое состояние перед повторением.

Завершает оператор цикла и передает выполнение в оператор, следующий сразу за циклом.

Продолжение BLOCK, оно всегда выполняется непосредственно перед тем, как условная оценка собирается снова быть оценена.

Команда redo перезапускает блок цикла без повторной оценки условия. Блок продолжения, если он есть, не выполняется.

Perl поддерживает команду goto в трех формах: метка goto, выражение goto и goto & name.

Бесконечный цикл

Цикл становится бесконечным, если условие никогда не становится ложным. Цикл for традиционно используется для этой цели. Поскольку ни одно из трех выражений, образующих цикл for, не требуется, вы можете создать бесконечный цикл, оставив условное выражение пустым.

#!/usr/local/bin/perl
 
for( ; ; ) {
   printf "This loop will run forever.\n";
}

Вы можете завершить описанный выше бесконечный цикл, нажав клавиши Ctrl + C.

Когда условное выражение отсутствует, оно считается истинным. Вы можете иметь инициализационное и инкрементное выражение, но программист чаще использует конструкцию for (;;) для обозначения бесконечного цикла.