![](/user_photo/2706_HbeT2.jpg)
- •Циклы методические указания
- •1.2 Оператор цикла с параметром for
- •For ( выражение_1 ; выражение_2 ; выражение_3 ) оператор;
- •1.3 Оператор цикла с предусловием while
- •While ( выражение ) оператор;
- •1.4 Оператор с постусловием do…while
- •Do оператор while ( выражение );
- •1.5 Оператор break
- •1.6 Оператор continue
- •2 Задание
- •3 Контрольные вопросы
- •Приложение а Задания на вычисление суммы ряда с использованием оператора цикла for
- •Приложение б Задания на вычисление значения выражений с использованием оператора цикла for
- •Приложение в Задания на вычисление значения выражений с использованием операторов цикла с внутренним разветвлением
- •Приложение г Задания на вычисление значения выражений с использованием операторов цикла с предусловием и постусловием
While ( выражение ) оператор;
Оператор цикла с предусловием действует таким образом: проверяется условие и если оно истинно, то выполняется оператор. Если ложно, то оператор WHILE прекращает свою работу. Схема оператора цикла while выглядит следующим образом (рис. 3):
Рис.3 Схема оператора цикла while.
В качестве выражения допускается использовать любое выражение языка С++, а в качестве оператора любой оператор, в том числе пустой или составной. Схема выполнения оператора while следующая:
1. Вычисляется выражение.
2. Если выражение равно нулю, то выполнение оператора while заканчивается и выполняется следующий по порядку оператор. Если выражение не равно нулю, то выполняется оператор в цикле while.
3. Процесс повторяется с пункта 1.
В операторе while проверка условия происходит вначале, перед выполнением операторов, образующих тело цикла. Оператор while удобно использовать в ситуациях, когда цикл не всегда должен выполняться. При построении цикла while необходимо включить в тело цикла какие-либо конструкции, изменяющие величину проверяемого выражения так, чтобы в конце концов оно стало равным нулю. В противном случае цикл будет бесконечным.
Пример 4. Цикл будет выполняться бесконечно
int i, s;
i=2;
while(i < 5) {
printf("Добрый день!");
}
Пример 5. Цикл будет выполнен 3 раза
int i, s;
i=2;
while(i < 5) {
printf("Добрый день!");
i=i+1;
}
Оператор цикла вида
for (выражение1; выражение2; выражение3) тело ;
может быть заменен оператором while следующим образом:
выражение1;
while (выражение2)
{ тело
выражение3;
}
Так же как и при выполнении оператора for, в операторе while вначале происходит проверка условия. Поэтому оператор while удобно использовать в ситуациях, когда тело оператора не всегда нужно выполнять.
Внутри операторов for и while можно использовать локальные переменные, которые должны быть объявлены с определением соответствующих типов.
1.4 Оператор с постусловием do…while
Оператор цикла do while называется оператором цикла с постусловием и используется в тех случаях, когда необходимо выполнить операторы, образующие тело цикла, хотя бы один раз. Формат оператора имеет следующий вид:
Do оператор while ( выражение );
Схема оператора цикла do while выглядит следующим образом (рис. 4):
Рис.4 Схема оператора цикла do while
Схема выполнения оператора do while:
1. Выполняется тело цикла (которое может быть составным оператором).
2. Вычисляется выражение.
3. Если выражение равно нулю, то выполнение оператора do while заканчивается и выполняется следующий оператор по порядку за оператором цикла. Если выражение не равно нулю, то выполнение оператора цикла do while продолжается с пункта 1.
Чтобы прервать выполнение цикла до того, как условие станет ложным, можно использовать оператор break. Операторы while и do while могут быть вложенными.
Пример 6. Вложенные циклы.
int i, j, k, s ;
j=0;
k=0;
s=0;
do {
i=0;
while ( i < 5) { k++; i++; }
s=s+k+i-j;
j--;
}
while ( j < -10);