Оператор Redo
Оператор Redo
redo - начать новый цикл не вычисляя EXPR и не выполняя continue блок.
* * * *
Пример применения оператора next:
#!/usr/bin/perl print "Content-Type: text/html\n\n"; M1: while ($i < 6) { ++$i; # Увеличиваем счетчик на 1 next M1 if $i < 3; # Переходим в начало если $i < 3 ++$i; # иначе увеличиваем счетчик еще раз на 1 } continue { print "$i "; # Печатаем $i } # получаем 1 2 4 6Пример применения оператора last:
#!/usr/bin/perl print "Content-Type: text/html\n\n"; M1: while ($i < 6) { ++$i; # Увеличиваем счетчик на 1 last M1 if $i > 3; # Выход из цикла если $i > 3 ++$i; # иначе увеличиваем счетчик еще раз на 1 } continue { print "$i "; # Печатаем $i } # результат: 2 4Пример применения оператора redo:
#!/usr/bin/perl print "Content-Type: text/html\n\n"; M1: while ($i < 6) { ++$i; # Увеличиваем счетчик на 1 redo M1 if $i == 3; # Далее пропустить для $i = 3 ++$i; # иначе увеличиваем счетчик еще раз на 1 } continue { print "$i "; # Печатаем $i } # получим 2 5 7* * * *
Напишите программу, выводящую все простые числа из диапазона (-28..53) включительно. Есть ли вообще простые числа в этом диапазоне?
Для справки: простое число, это такое число, которое дилится без остатка только на себя и еденицу.
Напишите программу, вычисляющую произведение двух соседних числа ряда из диапазона (-28..53), и если это число делется без остатка на 7, выводит результат на экран и увеличивает переменную цикла на 2.