Глава 6
Циклы
Одни и те же действия часто нужно повторить: пройти по диапазону чисел, обработать элементы, дождаться изменения состояния. Повторяющийся блок записывается один раз, а условие продолжения выносится в заголовок цикла или в его окончание. В главе собраны счётный цикл FOR, предусловный WHILE и формы DO … LOOP, а также средства досрочного выхода и пропуска прохода.
Повторение по счётчику
Когда известен диапазон повторений, используйте FOR. Цикл создаёт собственный счётчик, последовательно изменяет его и заканчивается на границе диапазона:
FOR index = 1 TO 3
PRINT index
NEXTРезультат:
1
2
3Счётчик доступен внутри цикла, поэтому его значение можно использовать в теле и печатать. Подробные правила шага, направления и границ собраны в статье FOR.
Повторение по условию
Когда число проходов заранее неизвестно, повторение подчиняют условию. Оператор WHILE проверяет условие до выполнения тела. Формы DO … LOOP позволяют проверить условие в начале или конце. Проверка в конце означает, что тело выполняется хотя бы один раз.
Условие должно иметь тип BOOLEAN. Если значения, от которых оно зависит, не меняются, цикл может продолжаться бесконечно.
Выход и продолжение
Условие не всегда выражает момент, когда повторения пора прекратить: иногда ответ уже получен внутри тела. Оператор EXIT завершает ближайший цикл указанного вида. Оператор CONTINUE пропускает остаток текущего прохода и переходит к следующему. У каждой формы есть собственный допустимый контекст; общего оператора выхода из любого цикла нет.