for переменная := начало downto конец do оператор;
где
- оператор - простой или составной оператор (тело цикла);
- переменная – параметр цикла;
- начало и конец– соответственно начальное и конечное значения параметра.
for ([фо] – для), to ([ту] – к), downto ([даунту] – уменьшать) – ключевые слова.
На параметр цикла в операторе for накладываются следующие ограничения:
1) в качестве параметра может использоваться только переменная порядкового типа (например, целого);
2) начальное и конечное значения параметра могут быть константами, переменными или выражениями, но должны иметь одинаковый с ним тип;
3) параметр цикла, а также его начальное и конечное значения не могут быть изменены никаким оператором в теле цикла;
4) после завершения цикла значение его параметра становится неопределенным.
Выполнение оператора с ключевым словом to. В этом варианте оператора необходимо, чтобы начало £ конец. В противном случае тело цикла не выполнится ни разу.
1. Вычисляются и запоминаются начальное и конечное значение параметра цикла (начало и конец).
2. Значение параметра (обозначим его i ) сравнивается с конечным значением конец. Если i £ конец, то выполняется тело цикла. В противном случае выполнение цикла прекращается.
3. Значение i увеличивается на 1 и повторяется шаг 2.
Выполнение оператора с ключевым словом downto. В этом варианте оператора необходимо, чтобы начало ³ конец. В противном случае тело цикла не выполнится ни разу.
1. Вычисляются и запоминаются начальное и конечное значение параметра цикла (начало и конец).
2. Значение параметра (обозначим его j ) сравнивается с конечным значением конец. Если j ³ конец, то выполняется тело цикла. В противном случае выполнение цикла прекращается.
3. Значение j уменьшается на 1 и повторяется шаг 2.
Пример 3.13.Вычислить значения функции y = sin (x 2) на отрезке [a, b], если шаг изменения её аргумента Dx.
В этой задаче количество повторений цикла равняется числу точек разбиения на отрезке [a, b] и может быть вычислено до выполнения цикла как целая часть от деления длины отрезка b – a на величину шага Dx плюс 1. Для вычисления целой части воспользуемся встроенной функцией trunc.