Для программирования циклических алгоритмов используются операторы цикла. В языке Pascal различают три вида операторов цикла: for, while, repeat. Оператор цикла for имеет вид:
forпараметр цикла:= выражение_1 to выражение_2 do оператор;
или
forпараметр цикла:=выражение_1 downto выражение_2 do оператор;
параметр цикла - переменная порядкового типа;
выражение_1- начальное значение параметра цикла;
выражение_2 – конечное значение параметра цикла.
Сначала вычисляются и запоминаются значения выражения_1 и выражения_2. Далее проверяется: значение выражения_1 меньше или равно (для downto - больше или равно) значению выражения_2. Если нет, то выполнение оператора цикла завершается, если же - да, то параметр цикла получает значение выражения_1, выполняется оператор и параметр цикла получает следующее значение (для downto– предыдущее значение). Затем проверяется: параметр цикла меньше или равен (для downto - больше или равен) значению выражения_2. Если да, то снова выполняется оператор и параметр цикла получает новое значение, если же - нет, то выполнение оператора цикла завершается.
Примеры:
fori:=1 to 10 do writeln(‘i=’,i);
fori:= 10 downto 1 do writeln(‘i=’,i);
Оператор цикла while имеет вид:
while логическое выражение do оператор;
Пока значение логического выражения true, выполняется оператор, записанный после служебного слова do, как только значение станет false, оператор цикла завершит свою работу. Если значение выражения с самого начала false, то указанный в цикле оператор не выполнится ни разу.
Пример: i:=1;
while i<=10 do
begin writeln(‘i=’,i);
i:=i+1