Циклы
Повторение однотипного набора команд заданное по условию количество
Итерация - единичное выполнение тела цикла.
Тело цикла - набор инструкций, заключенных в фигурные скобки ({}
), исполняемых, если условие цикла приводится к true
.
WHILE
while
— цикл, который выполняется пока условие, указанное перед его началом приводится к true. Это условие проверяется перед запуском тела цикла. Если изначально перед запуском первой итерации условие приводится к false, цикл не запустится вовсе.
Схема цикла while
Пример использования цикла while
DO WHILE
do...while
— цикл, в котором условие проверяется после выполнения тела. Такой цикл всегда выполнится хотя бы раз, потому что сначала отрабатывает код цикла, только потом выход из-за условия, приведенного к false
Схема цикла do...while
Пример использования цикла do...while
FOR
Цикл со счётчиком - цикл, в котором некоторая переменная изменяет своё значение от заданного начального до конечного значения с некоторым шагом и для каждого значения этой переменной тело цикла выполняется один раз.
В большинстве процедурных языков программирования реализуется конструкцией for
, в которой указывается счётчик, требуемое количество итераций и шаг, с которым изменяется счётчик.
Алгоритм исполнения цикла for
:
Инициализация (initialization) - выполняется один раз перед началом цикла. Используется для создания переменной-счётчика и указания её начального значения.
Условие (condition) - выражение, оцениваемое перед каждой итерацией (повторением) цикла. Тело цикла выполняется только тогда, когда выражение приводится к
true
. Цикл завершается, если значение будетfalse
.Тело (statements) - набор инструкций для выполнения на каждом повторении. Выполняется если выражение условия приводится к
true
.Пост-выражение (post-expression) - выполняется в конце каждого повторения цикла, перед проверкой условия. Используется для обновления переменной-счётчика.
Переменные-счетчики, по традиции, называются буквами i
, j
и k
.
В примере объявляется перемнная-счетчик i
, инициализируется значением 0
и цикл выполняется до тех пор, пока i <= 20
, то есть условие приводится к true
. После каждой итерации счётчик увеличивается на 5
.
Посчитаем сумму чисел до определенного значения.
Вспомним про операцию a % b
и выведем остаток от деления используя цикл.
Оператор break
break
Прервать выполнение цикла можно в любой момент. Для этого сущестует оператор break
, который полностью прекращает выполнение цикла и передаёт управление на строку за его телом.
Найдём число 3
. Как только выполнится условие if
, цикл прекратит своё выполнение (будет прерван).
Оператор continue
continue
Прерывает не весь цикл, а только выполнение текущей итерации. Его используют, если понятно, что на текущей итерации цикла делать больше нечего или вообще ничего делать не нужно и пора переходить на следующую итерацию.
Используем цикл для вывода только нечетных чисел. Для чётных i
срабатывает continue
, выполнение тела прекращается и управление передаётся на следующую итерацию.
Last updated