Оператор цикла с параметром имеет 2 модификации:
For K:=N1 to N2 do M; (с возрастанием параметра)
For K:=N1 downto N2 do M; (с убыванием параметра)
-
+
For – для;
To – до;
Downto – уменьшая до;
K – переменная порядкового типа (Integer, Char, Boolean), называется параметром цикла;
N1, N2 – выражение, имеющее значение того же типа, что и параметр K;
M – любой оператор в единственном числе;
Если по смыслу задачи надо повторять группу операторов, то их надо превратить в один составной оператор (заключить в операторные скобки):
Выполняется:
1. Вычисляется значение N1, N2;
2. K:=N1;
3. Проверяется условие:
- K<=N2 (to)
- K>=N2 (downto)
4. Если условие не выполнено, то выполнение оператора цикла заканчивается. Иначе выполняется оператор M;
5. K – получает приращение:
- K:=succ(K) (to);
- K:=pred(K) (downto);
6. Переход к пункту 3;
В турбо Паскале в отличие от Бейсика цикл с параметром реализован как цикл «пока» и значит оператор M может ни разу не выполнится.

Задача 3.
Вывести коды всех строчных символов латинского алфавита.
Решение:
Program Ci3;
Var S:Char;
Begin
For S:=’a’ to ’z’ do
Writeln(’У символа - ’,S,’ код ’,Ord(S));
End.
Задача 4.
Вывести на экран цифры в обратной последовательности
Решение:
Program Ci4;
Var R:Integer;
Begin
For R:=9 downto 1 do Write(R,’ ’:4);
End.
Задача 5
Вывести на экран 10 случайных чисел в диапазоне от 0 до 100.
Решение:
Program Ci4;
Const X=100;
Var Y,R:Integer;
Begin
Randomize; {инициализирует генератор случайных чисел}
For R:=1 to 10 do
Begin
Y:=Random(X);
Writeln(R,’=’,Y);
End;
End.