Язык программирования C++



             

Операторы цикла - часть 2


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

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

while (условие) оператор

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

int digits =0; while (N > 0) { digits = digits + 1; N = N / 10; }

Третьей формой оператора цикла является цикл do while. Он имеет форму:

do { операторы } while ( условие);

Отличие от предыдущей формы цикла while заключается в том, что условие проверяется после выполнения тела цикла. Предположим, требуется прочитать символы с терминала до тех пор, пока не будет введен символ "звездочка".

char ch; do { ch = getch(); // функция getch возвращает // символ, введёный с // клавиатуры } while (ch != '*');

В операторах while и do также можно использовать операторы break и continue.

Как легко заметить, операторы цикла взаимозаменяемы. Оператор while соответствует оператору for:

for ( ; условие ; ) оператор

Пример чтения символов с терминала можно переписать в виде:

char ch; ch = getch(); while (ch != '*') { ch = getch(); }

Разные формы нужны для удобства и наглядности записи.




Содержание  Назад  Вперед