Разветвляющийся вычислительный процесс.
При решении задач могут возникать ситуации, когда действие осуществляется в зависимости от некоторого условия и выбора действия в зависимости от этого условия. Для этого используются условные операторы.
Первое выражение |
Второе выражение |
иначе |
затем |
условие |
если |
начало |
program A1; var a,b,x: integer; y: real; begin writeln (‘введитеx=’); readln (x); writeln (‘введите b=’); readln (b); writeln(‘введите a=’); readln (a); if (x>=5) then y:=a*exp(3*ln(x))+b else y:=sqrt(x+b/a); writeln (‘y=’, y:7:2); readln; end. |
a, b, x |
конец |
x 5 |
y |
да |
нет |
начало |
x |
program A1; var x: integer; T: real; begin writeln (‘введите x=’); readln (x); if (T<2) then writeln (‘y=1’) else writeln (‘y=привет’); readln; end. |
конец |
T< 2 |
да |
нет |
y |
Разветвляющийся вычислительный процесс (3 условия)
1)
/x |
да |
a, b, x |
начало |
Program Vito; var a,b: integer; z,x: real; writeln (‘a=’); readln (a); writeln (‘b=’); readln (b); writeln (‘x=’); readln (x); if (x<5) then z:=a*x+b/x; if (x>10) then z:=exp(3*ln(x)) else z:=a*sqr(x)+b; writeln (‘z=’, z:8:2); readln; end. |
x<5 |
x>10 |
нет |
нет |
да |
Z |
конец |
2)
9. Циклический вычислительный процесс.
Операторы цикла используются, когда действие нужно повторить некоторое количество раз. Операторов цикла в Паскале – 3:
· Цикл «for» - с известным числом повторений;
· Цикл «while» с предусловием;
· Цикл «repeat» c постусловием.
Цикл forимеет счетчик цикла, а также начальное и конечное значения счетчика цикла:
FOR X: 1 to 10 do begin y:= x*y; write(‘y=’); end;
FOR идентификатор := выражение to выражение do оператор
Синтаксическая диаграмма оператора repeat –выполняется до тех пор, пока условие, находящееся в конце цикла после зарезервированного слова untilне станет выполнено.
Repeat оператор until условие
В случае наличия в теле цикла нескольких операторов цикла repeat не нуждается в операторных скобках beginи end.
Readln(n); repeat y:=1.5*n; writeln (‘y=’, y:7:2); n:=n+0.1; until n<=4.5; end. |
Синтаксическая диаграмма оператора цикла While
While условие do оператор.
writeln (‘введите n=’); readln (n); while n<=4 do begin z:=2*n; writeln (‘z=’, z:8:3); n:=n+0.5; end; end. |