Составные операторы в языке Паскаль

Составной оператор – это последовательность произвольных операторов программы, заключенная в операторные скобки – зарезервированные слова BEGIN… END. Составные операторы – важный инструмент Pascal, дающий возможность писать программы по современной технологии структурного программирования (без операторов перехода GOTO).

Pascal допускает произвольную глубину вложенности составных операторов:

BEGIN

……

BEGIN

……

BEGIN

……

END;

……

END;

……

END.

Поскольку BEGIN и END представляют собой структурные скобки, то после BEGIN и перед END

ставить знак «;» не обязательно.

В программе может применяться пустой оператор, не выполняющий никакого действия. Например

– ; ;.

Линейные программы (пример)

Алгоритм линейной структуры - это алгоритм, в котором блоки выполняются в указанном порядке, последовательно друг за другом. Программа линейной структуры реализует соответствующий линейный алгоритм. Чаще всего линейные алгоритмы используются для программирования вычислений по формулам. В этом случае удобно использовать набор встроенных функций Pascal: Sin (x) – синус х; cos(x) – косинус х; tan(x)- тангенс х ; ln (x) – натуральный логарифм х ; exp (x) -показательная функция e^x ; sqr (x) - квадрат x; sqrt(x)- корень квадратный от х; abs(x)- модуль x. Для тригонометрических функций аргумент х измеряется в радианах. Гиперболические функции записываются с применением экспоненты, например: Sh (x)=(exp (x)-exp (-x)) /2

Дано:а=2.5;в=0.38.Вычмслить и напечатать значение величины р,определяемой формулой p=sina cosb/2

Program lab;

Var a,b,p:real;

Begin

a:=2,5;b:=0.38;

p:=sin(a)*cos(b/2);

writeln(a,b,p)

end.

Разветвляющиеся программы с использованием оператора IF(пример)

Условный оператор включает в себя операторы, которые выполняются или не выполняются в зависимости от записанного в операторе условия. Оператор имеет вид: IF "условие" Then "оператор1" Else "оператор2";где "условие" - выражение логического типа; "оператор1" выполняется, если условие верно ( True ), "оператор2" выполняется, если условие не верно ( False).

Напишите программу, определяющую наименьшее значение из двух чисел, введенных с клавиатуры.

PROGRAM Minimum;

VAR a, b, min : real;

BEGIN

WRITELN('Введите два числа');

READLN(a, b);

IF a<b Then min:=a ELSE min:=b;

WRITELN(min);

END.

PROGRAM Rar;

VAR a, b, p : real;

BEGIN

WRITE('Введите b=');

READLN( b);

a:=sin(b/2);

IF a<0.3 Then p:=exp(a)+exp(1/3*ln(a+1))

ELSE p:=sin(a/2)/cos(a/2);

WRITELN(‘p=’ , p:9:6);

END.