1 вариант.
Данный оператор используется для организации циклов с заранее известным числом повторений.
Формат:
FOR A:=A1 TO A2 DO
<тело цикла>;
А - параметр цикла (управляющая переменная);
А1 - начальное значение параметра;
А2 – конечное значение параметра;
Особенности работы оператора.
А может быть переменной порядкового типа, чаще всего используют тип integer или char. Тип real использовать нельзя.
А1 и А2 – выражения того же типа, что и А.
<тело цикла> - это один оператор или группа операторов в PASCAL. Если используется группа операторов, то необходимо ставить операторные скобки Begin…End.
Работа оператора.
Сначала вычисляется выражение А1 и А2, затем переменной А присваивается значение А1 и проверяется условие А£А2. Если условие выполняется, то выполняется тело цикла и происходит возврат на повторение цикла, при этом значение переменной А увеличивается на 1. Снова проверяется А£А2, если да, то цикл повторяется и т.д. Выход из цикла происходит в случае, когда А>А2.
Если условие ложно сразу же, то тело цикла не выполняется им сразу.
Данному оператору цикла соответствует следующая логическая схема:
2 вариант.
Формат:
FOR A:=A1 DOWNTO A2 DO
<тело цикла>
Особенности работы: шаг изменения переменной А=-1. А1-max значение управляющей переменной;
А2-min значение
< тело цикла > выполняется при А³А2.
Выход из цикла осуществляется при А<А2.
Правила организации циклов:
1. Параметр цикла, начальное и конечное значения должны быть одинакового типа.
2. Очередное значение параметра цикла вычисляется автоматически с помощью функций SUCC (1 случай) и PRED (2 случай).
3. Запрещается входить в цикл с помощью GOTO, минуя FOR.
4. Запрещается изменять в теле цикла значения А, А1 и А2.
5. По окончании выполнения цикла значение переменной А не определено и не может использоваться в последующих вычислениях.
6. После служебного слова Do может стоять либо один оператор, либо группа, но заключённая в операторные скобки.
7. Из составного оператора (группы операторов) в операторе цикла можно выйти до окончания цикла с помощью GOTO, тогда последнее значение параметра цикла сохраняется.
Задание: Составление, редактирование и отладка программ по индивидуальным заданиям.
В1.
Задание лаб. раб. №3 для tÎ[0,3]
∆t=0,15
В2.
Задание лаб. раб. №3 для xÎ[0,8;2]
∆x=0,1
В3.
Задание лаб. раб. №3 для xÎ[1;2]
∆x=0,05
В4.
Задание лаб. раб. №3 для xÎ[0,7;2]
∆x=0,1
В5.
Задание лаб. раб. №3 для xÎ[0,2;2,8]
∆x=0,2
В6.
Задание лаб. раб. №3 для xÎ[1;5]
∆x=0,5
В7.
Задание лаб. раб. №3 для xÎ[0,1;1]
∆x=0,1
В8.
Задание лаб. раб. №3 для xÎ[2;5]
∆x=0,25
В9.
Задание лаб. раб. №3 для xÎ[0,5;2]
∆x=0,1
В10.
Задание лаб. раб. №3 для xÎ[0,2;2]
∆x=0,2
В11.
Задание лаб. раб. №3 для xÎ[0;7]
∆x=0,5
В12.
Задание лаб. раб. №3 для xÎ[0,8;2]
∆x=0,1
В13.
Задание лаб. раб. №3 для iÎ[1;12]
∆i=1
В14.
Задание лаб. раб. №3 для iÎ[1;10]
∆i=1
В15.
Задание лаб. раб. №3 для tÎ[-1;1]
∆t=0,2
В16.
В17.
В18.
В19.
В20.
![]() |
Лабораторная работа №5
Тема: Составление, редактирование и отладка программ с простейшими арифметическими циклами.
Цель: Овладеть навыками программирования вычислительных процессов с циклической структурой.
Теория:
Знакопеременные ряды.
При программировании знакопеременных рядов, при формировании знака берём ячейку с (переменную) в блоке подготовки цикла и присваиваем ей 1 или –1, в зависимости от того какой знак имеет первый член ряда. В рабочей области цикла домножаем очередной член ряда на С, а затем в конце рабочей части цикла меняем его на обратный.
Пример:
![]() |
Program Summa;
Var n,c:integer;
a,s:real;
Begin
S:=0;
C:=0;
For n:=1 to 10 Do
Begin
A:=(1/(2*n))*c;
S:=S+A;
C:=(-C);
End;
Writeln(‘S=’,S:6:3);
End.