Функции
служат, прежде всего, для определения алгоритма вычисления некоторого значения (). В этом отношении функции подобны выражениям, которые также вычисляют значение. В соответствии с этим вызов функции является одним из допустимых операндов выражения, обозначая в нем то значение, которое вычисляет ("возвращает") функция.
Описание процедуры:
PROCEDURE
ИмяПроцедуры ( СписокФормальныхПараметров );
LABEL
Перечисление меток внутри тела процедуры
CONST
Описание локальных констант
TYPE
Описание локальных типов
VAR
Описание локальных переменных
BEGIN
Тело процедуры
END.
Пример описания и вызова процедуры:
PROGRAM
Example_of_Procedure;
USES CRT;
PROCEDURE ChangeColor( C1, C2 : Word );
BEGIN
TextColor(C1);
TextBackGround(C2)
END;
BEGIN
ChangeColor( Yellow, Blue ); { Вызов процедуры }
ClrScr; { Ощичаем экран }
...
...
END.
Описание функции:
FUNCTION
ИмяФункции ( СписокФормальныхПараметров ) : ТипЗначения;
LABEL
Перечисление меток внутри тела процедуры
CONST
Описание локальных констант
TYPE
Описание локальных типов
VAR
Описание локальных переменных
BEGIN
Вычисление значения функции;
ИмяФункции := ВычисленноеЗначение
END.
Для присвоения функции вычисленного значения ее имя должно хотя бы раз появиться в левой части оператора присванивания в теле самой функции (ИмяФункции := ВычисленноеЗначение).
Пример описания и вызова функции:
PROGRAM
Example_of_Function;
USES CRT;
VAR a : Integer;
FUNCTION Factorial( n : Integer ) : LongInt;
VAR
F : LongInt;
k : Integer;
BEGIN
F:=1;
for k:=1 to n do F:=F*k;
Factorial := F
END;
BEGIN
ClrScr;
Write('Введите целое число a: ');
ReadLn(a);
Writeln('Факториал а = ', Factorial(a) );
ReadLn;
END.