Краткая справка по языку программирования Turbo Pascal


         

Оператор цикла с предусловием WHILE - часть 4


VAR i : integer;

BEGIN

  FOR i := 1 TO 10 DO Write(i:5);

  FOR i := 5 DOWNTO 0 DO

Write(i:5)

END.

На месте младших и старших значений могут стоять константы, а могут и переменные или выражения, совместимые по присваиванию с параметром цикла. Например,

CONST n = 10;

      m = 3;

VAR i,

    k : integer;

BEGIN

  k := 1;

  FOR i := k TO n DO Write(i:5);

  FOR i := (m+2) DOWNTO 0 DO

Write(i:5)

END.

Выполнение цикла начинается с присваивания параметру стартового значения. Затем следует проверка, не превосходит ли параметр конечное значение (случай с TO) или не является ли он меньше конечного значения (случай с DOWNTO). Если результат проверки утвердительный, то цикл считается завершенным. В противном случае выполняется тело цикла (оператор, следующий за словом DO), и после этого параметр цикла меняет свое значение на следующее. Далее снова производится проверка значения параметра цикла, т.е. алгоритм повторяется.

Запрещается

изменять параметр цикла и его старшее и младшее значения внутри тела цикла. Кроме того, параметр цикла не может участвовать в построении диапазонов этого же цикла. Компилятор таких “незаконных” действий не замечает, но программа, содержащая цикл с заголовком типа

FOR i := i-5 TO

i+5 DO ... ;

не заслуживает никакого доверия, даже если запускается!

Операторы FOR могут быть вложенными друг в друга, например

VAR

  i,j : integer;

BEGIN

  WriteLn(‘Таблица умножения’);

  FOR i := 1 TO 10 DO begin

     FOR j := 1 TO 10 DO

Write((i*j):5);

    WriteLn;

  end;

END.




Содержание  Назад  Вперед