Цикл с предусловием while

Формат оператора прост: while (выражение) оператор

Выражение должно быть логического типа. Например, это может быть операция от­ношения или просто логическая переменная. Если результат вычисления выраже­ния равен true, выполняется простой или составной оператор (блок). Эти действия повторяются до того момента, пока результатом выражения не станет значение false. После окончания цикла управление передается на следующий за ним оператор.

Выражение вычисляется перед каждой итерацией цикла. Если при первой про­верке выражение равно false, цикл не выполнится ни разу.

Цикл с постусловием do

Цикл с постусловием реализует структурную схему, приведенную на рис. 4.4, б, и имеет вид

do оператор while выражение;

Сначала выполняется простой или составной оператор, образующий тело цикла, а затем вычисляется выражение (оно должно иметь тип bool). Если выражение истинно, тело цикла выполняется еще раз и проверка повторяется. Цикл завер­шается, когда выражение станет равным false или в теле цикла будет выполнен какой-либо оператор передачи управления.

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

Пример программы, выполняющей проверку ввода, приведен в листинге 4.5.

Цикл с параметром for

Цикл с параметром имеет следующий формат:

for (инициализация; выражение; модификации) оператор;

Инициализация служит для объявления величин, используемых в цикле, и при­своения им начальных значений. В этой части можно записать несколько опера­торов, разделенных запятой, например:

for (int i = 0, j = 20;...

int k, m;

for (k = 1, m = 0;...

Областью действия переменных, объявленных в части инициализации цикла, яв­ляется цикл. Инициализация выполняется один раз в начале исполнения цикла. Выражение типа bool определяет условие выполнения цикла: если его результат равен true, цикл выполняется. Цикл с параметром реализован как цикл с преду­словием.

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

for (int i = 0, j = 20; i < 5 && j > 10; i++, j--)...

Простой или составной оператор представляет собой тело цикла. Любая из час­тей оператора for может быть опущена (но точки с запятой надо оставить на сво­их местах!). Для примера вычислим сумму чисел от 1 до 100:

int s = 0;

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

s += i;


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



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