Лабораторная работа №3 «Операторы цикла в PHP» 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа №3 «Операторы цикла в PHP»



Операторы цикла задают многократное исполнение операторов в теле цикла. В PHP определены 4 разных оператора цикла.

While

Оператор while называется оператором цикла с предусловием. При входе в цикл вычисляется выражение условие, и, если его значение отлично от нуля, выполняется тело цикла. Затем вычисления выражения условия и операторов тела цикла выполняется до тех пор, пока значение выражения условия не станет равным нулю. Оператором while удобно пользоваться для просмотра всевозможных последовательностей, если в конце них находится заранее известный символ. (Это очень удобно в C++, к примеру для определения длины строки, поскольку в С++, по определению, строка есть последовательность символов типа char, заканчивающаяся нулевым символом).

Пример простейшего цикла while:

<? $var = 5; $i = 0; while (++$i <= $var) { echo ($i); echo ('<br>');     }?>

Этот код выдает в окне браузера цифры от одного до пяти:

  1 2 3 4 5

Для выхода из цикла применяется оператор break. При обнаружении этого оператора текущая итерация цикла прекращается, и последующие итерации не происходят. При выполнении следующего примере, несмотря на то, что переменная $var = 7, в окне браузера появятся цифры от 1 до 3.

<? $var = 7; $i = 0; while (++$i <= $var) { echo ($i); echo ('<br>'); if ($i==3) break; }?>

Иногда бывает нужно прервать только текущую итерацию, и перейти сразу к следующей. Для этого применяется оператор continue:

<? $var = 7; $i = 0; while (++$i <= $var) { if ($i= =5) {     continue; } echo ($i); echo ('<br>'); }?>

В этом примере выводятся цифры от 1 до 7, кроме цифры 5:

  1 2 3 4 6 7

Заметим, что если Вы условный оператор поставите после операторов echo, код будет ошибочным, и выведутся все цифры от 1 до 7, поскольку проверка условия выхода из цикла на данной итерации, будет происходить уже после выполнения этой итерации.

Do…while

Этот оператор называется оператором цикла с постусловием. При входе в цикл в любом случае выполняется тело цикла (т.е. цикл всегда будет выполнен хотя бы один раз), затем вычисляется условие, и если оно не равно 0, вновь выполняется тело цикла.

<? $var = 5; $i = 0; do { echo ($i); echo ('<br>');     } while (++$i <= $var) ?>

Результат:

  0 1 2 3 4 5

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

В следующем скрипте, мы по традиции выведем числа от 0 до 5:

<? $var = 5; $i = 0; for ($i = 0; $i <= $var; $i++) { echo ($i); echo ('<br>'); }?>

Результат аналогичен, показанному на предыдущем рисунке.

For

Как уже говорилось, итерационный цикл имеет следующий формат:

for (expression1;expression2;expression3) { statements; }

Здесь expression1 (инициализация цикла) – последовательность определений и выражений, разделяемая запятыми. Все выражения, входящие в инициализацию, вычисляются только один раз при входе в цикл. Как правило, здесь устанавливаются начальные значения счетчиков и параметров цикла. Смысл выражения-условия (expression2) такой же как и у циклов с пред- и постусловиями. При отсутствии выражения-условия предполагается, что его значение всегда истинно. Выражения expression3 вычисляются в конце каждой итерации после выполнения тела цикла.

В следующем скрипте, мы по традиции выведем числа от 0 до 5:

<? $var = 5; $i = 0; for ($i = 0; $i <= $var; $i++) { echo ($i); echo ('<br>'); }?>

 

Задания для лабораторной работы №3:

1. Вычислить n!,n!!.

2. Вычислить 10!, используя все три вида циклов.

3. Найти f-первое число Фибоначчи, большее m (m>1).

4. Вычислить y=sin1+sin1.1+sin1.2+...+sin2.

5. Напечатать все простые делители заданного натурального числа.

6. Определить, является ли заданное число палиндромом, т.е. таким, десятичная запись которого читается одинаково слева направо и справа налево.

7. Вычислить s- сумму квадратов всех целых чисел, попадающих в интервал (ln(x),exp(x)),x>1.

8. Вычислить y=1!+2!+3!+...+n! (n>1).

9. Вычислить k- количество точек с целочисленными координатами попадающих в круг радиуса R (R>0) с центром в начале координат.

10. Напечатать в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр (операции деления не использовать).

 



Поделиться:


Последнее изменение этой страницы: 2020-11-28; просмотров: 125; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.143.228.40 (0.005 с.)