ОПРЕДЕЛЕНИЕ И ИСПОЛЬЗОВАНИЕ ПОДПРОГРАММ ТИПА ПРОЦЕДУРА

Или

writeln(имя функции (список_фактических_параметров));

Параметры, которые указывают при вызове подпрограммы, называют фактическими параметрами. Типы данных в команде вызова не указывают. Параметры перечисляются через запятую.

Во время вызова подпрограммы между фактическими и формальными параметрами устанавливается взаимно однозначное соответствие:

Соответствие по количеству. Количество фактических параметров должно соответствовать количеству формальных параметров.

Соответствие по порядку следования. Первый формальный параметр в списке отвечает первому фактическому параметру, второй – второму и т.д.

Соответствие по типу. Тип каждого фактического параметра должен совпадать с типом соответствующего ему формального параметра.

Также надо помнить,что имена соответствующих пар фактических и формальных параметров могут не совпадать.

Задача 1.Необходимо вычислить значение выражения z = tg x+ctg y +tg2x.

{1} program FunctionTg;

{2} var x,y,z:real;

{3}//Объявление функции

{4} function tg(a:real):real;

{5} begin

{6}tg:=sin(a)/cos(a)

{7} end;

{8}//Начало основной программы

{9} begin

{10}writeln('Enter real x,y');

{11}readln(x,y);

{12}z:=tg(x)+1/tg(y)+sqr(tg(x));

{13}writeln('z=',z:5:2);

{14}//Конец основной программы

{15} end.

Строки {12} и {13} можно заменить одной

writeln('y=',tg(x)+1/tg(x)+sqr(tg(x)):5:2);

Процедура – подпрограмма, результатом работы которой может быть как целый набор значений, так и отсутствие значений, которые поворачиваются, в вызывающую программу (результат работы не сводится к вычислениям).

Синтаксис объявления процедуры имеет такой вид:

procedure имя_процедуры(список_формальных_параметров);

//локальные_объявления