234 ________Часть Ч. Программирование на C++
Цикл do прокручивается 11 раз, а цикл while — 10. В обоих случаях конечное значение счетчика одинаково: 11.
for
При использовании оператора while цикл зачастую выглядит следующим образом:
на чальное_выражение;
while(условие) {
// Последовательность операторов
выражение управления_циклом;
}
Обычно цикл выглядит так, когда последовательность операторов в его теле должна быть выполнена фиксированное число раз. Но в C++ предусмотрена конструкция, позволяющая делать то же самое более компактно — цикл for. Ниже приведен цикл for, эквивалентный предыдущему циклу while:
for (.начальное выражение; условие; выражение_управления_циклом) { // последовательность операторов.
}
При выполнении цикла for происходит следующее:
1. Выполняется начальное_выражение. Это ПРОИСХОДИТ ТОЛЬКО ОДИН раз —
при входе в цикл.
2. Проверяется условие. Если его значение равно true, то переходим к третьему пункту. Если же оно ложно, то управление передается оператору, следующему за блоком цикла for. Если это значение изначально было равно false, то операторы в теле цикла не выполняются ни разу.
3. Выполняется последовательность операторов.
4. Вычисляется выражение управления циклом.
5. Возврат в пункт 2.
Инструкции начальный оператор, условие И выражение управления_циклом ДОЛЖНЫ удовлетворять некоторым условиям. Одно из них или более могут быть опущены, но точка с запятой обязана присутствовать. То есть корректна следующая запись:
for (;;) (
// Последовательность операторов }
Это эквивалентно такому циклу while:
while(l) {
// Последовательность операторов }