Оператор цикла с предусловием

Лабораторная работа №4. Алгоритмы и программы циклических структур. Простые циклы

Цель работы

Изучить операторы циклов, используемые для организации повторяющихся процессов в программах.

Порядок выполнения работы

Получить задание на выполнение лабораторной работы согласно своему варианту. Разработать и отладить программу. Составить отчет о лабораторной работе и защитить его у преподавателя.

Содержание отчета

- наименование и цель работы;

- задание на лабораторную работу согласно варианту;

- схема алгоритма, текст программы на алгоритмическом языке;

- результаты работы программы.

Краткая теория

Оператор цикла задает повторное выполнение определенных операторов.

4.1 Оператор цикла for

Предположим, нам нужно вычислить сумму всех целых чисел от 0 до 100. Для этого воспользуемся оператором цикла for:

int sum = 0;

for (int i = 1; i <= 100; i++) //заголовок цикла

sum += i; // тело цикла

Оператор цикла состоит из заголовка цикла и тела цикла. Тело цикла – это оператор, который будет повторно выполняться (в данном случае – увеличение значения переменной sum на величину переменной i). Заголовок – это ключевое слово for, после которого в круглых скобках записаны три выражения, разделенные точкой с запятой. Первое выражение вычисляется один раз до начала выполнения цикла. Второе – это условие цикла. Тело цикла будет повторяться до тех пор, пока условие цикла истинно. Третье выражение вычисляется после каждого повторения тела цикла.

Оператор for реализует фундаментальный принцип вычислений в программировании – итерацию. Тело цикла повторяется для разных, в данном случае последовательных, значений переменной i. Повторение иногда называется итерацией. Мы как бы проходим по последовательности значений переменной i, выполняя с текущим значением одно и то же действие, тем самым постепенно вычисляя нужное значение. С каждой итерацией мы подходим к нему все ближе и ближе.

Любое из трех выражений в заголовке цикла может быть опущено (в том числе и все три). То же самое можно записать следующим образом:

int sum = 0;

int i = 1;

for (; i <= 100;)

{

sum += i;

i++;

}

Заметим, что вместо одного оператора цикла мы записали несколько операторов, заключенных в фигурные скобки – блок. Другой вариант:

int sum = 0;

int i = 1;

For (;;)

{

if (i > 100)

break;

sum += i;

i++;

}

В последнем примере мы опять встречаем оператор break. Он завершает выполнение цикла. Еще одним вспомогательным оператором при выполнении циклов служит оператор продолжения continue. Этот оператор заставляет пропустить остаток тела цикла и перейти к следующей итерации (повторению). Например, если мы хотим найти сумму всех целых чисел от 0 до 100, которые не делятся на 7, можно записать это так:

int sum = 0;

for (int i = 1; i <= 100; i++)

{

if (i % 7 == 0)

continue;

sum += i;

}

Еще одно полезное свойство цикла for: в первом выражении заголовка цикла можно объявить переменную. Эта переменная будет действительна только в пределах цикла.

Оператор цикла с предусловием

Другим способом реализации цикла является оператор while. Его формат следующий:

While (условие)

Оператор

Условие – как и в условном операторе if – это выражение, которое принимает логическое значение "истина" или "ложь". Выполнение оператора повторяется до тех пор, пока значением условия является true (истина). Условие вычисляется заново перед каждой итерацией, поэтому данная разновидность циклов называется циклом с предусловием. Например, подсчитать, сколько десятичных цифр нужно для записи целого положительного числа N, можно с помощью следующего фрагмента:

int digits = 0;

while (N > 0)

{

digits++;

N /= 10;

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: