Разветвляющийся вычислительный процесс.
При решении задач могут возникать ситуации, когда действие осуществляется в зависимости от некоторого условия и выбора действия в зависимости от этого условия. Для этого используются условные операторы.
| Первое выражение |
| Второе выражение |
| иначе |
| затем |
| условие |
| если |
| начало |
| 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. |