Циклические вычислительные процессы
Процессы, в которых ряд действий повторяются многократно по одним
и тем же математическим зависимостям, называются циклическими.
При организации циклов необходимо:
определить параметр цикла и его начальное значение;
изменять значение параметра цикла на каждом шаге итерации;
организовать проверку на выход из цикла.
На языке Паскаль существует три оператора цикла:
· оператор цикла с параметром;
· оператор цикла с предусловием;
· оператор цикла с постусловием.
Оператор цикла с параметром
for i:=N to K do P ;
(для) (до) (выполнять)
где i - параметр цикла;
N, K - его начальное и конечное значение;
P - простой или составной оператор;
i,N,K - переменные или константы целого типа.
Шаг изменения i - равен 1.
Если K<N, т.е. имеем дело с циклом с отрицательным шагом: (-1)
for i:=N down to K do P;
Оператор цикла с параметром автоматически устанавливает начальное значение параметра цикла, изменяет значение параметра на шаг
(+1 или -1), организовывает проверку на выход из цикла.
Задача.
Вычислить сумму ряда
S= 1+1/2+1/3+ … +1/50
Выделим переменную для накапливания суммы - sum. Значение этой переменной необходимо предварительно обнулить.
Program cikl;
Var
I: integer;
sum: real;
Begin
sum: =0;
for i: = 1 to 50 do
sum: = sum + 1/i;
Writeln (' сумма = ', sum:10:4);
End.
Оператор for применяют в тех случаях, когда значения параметра цикла целые и меняются с шагом +1, -1.
Оператор цикла с постусловием
Repeat
p1;p2 ;…pn ;
until <условие>;
где p1; p2 ; … pn ; - любые операторы, образующие тело цикла.
По этому оператору выполняется «тело цикла», а затем проверяется <условие>, если оно не выполнилось, цикл повторяется. И так до тех пор, пока <условие> не будет выполнено. Необходимо помнить: если <условие> выполнилось c первого раза, цикл будет пройден один раз.
Задача.
Вычислить значение функции:
y = a*sin (x ) ,
При x = от 0 до 1, с шагом =0.2
Program cikl_1;
Var
y,a,x:real;
Begin
writeln(‘Введите а’);
Read(a);
x:=0;
Repeat
y:=a*sin (x);
writeln (‘y=’,y:8:3,’ x=’,x:8:3);
x:=x+0.2;
until x>1;
End.
Действия, которые подчеркнуты, необходимы для организации цикла.
Для организации цикла необходимо выполнить три действия:
· восстановить начальное значение параметра цикла;
· сформировать текущее значение параметра цикла;
· организовать проверку на выход из цикла.
В операторе for … to … do перечисленные действия выполняются автоматически. В остальных операторах цикла эти действия необходимо организовать составителю программы.
Дата добавления: 2017-06-02; просмотров: 456;