Функции в языке Турбо-Паскаль

Кроме понятия процедуры, в языке Турбо-Паскаль существует также понятие функции. Функция предназначена для вычисления какого-либо параметра. Она имеет два основных отличия от процедуры.

Первое отличие функции в ее заголовке. Он состоит из слова FUNCTION, за которым следует имя функции, далее в скобках – список формальных параметров, а затем через двоеточие записывается тип функции – тип возвращаемого параметра.

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

В примере 16 вместо процедуры SumArray можно использовать такую функцию:

pascal
FUNCTION SumArray(Arr: IntArray) : integer;
var
i: integer;
begin
SumArray:=0;
for i:=1 to N do
SumArray:=SumArray+Arr[i];
end;

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

pascal
BEGIN
InputArray(A);
InputArray(B);
InputArray(C);
SA:=SumArray(A);
SB:=SumArray(B);
SC:=SumArray(C);
if SA<SB and SA<=SC then
OutputArray(A)
else
if SB<SA and SB<=SC then
OutputArray(B)
else
OutputArray(C);
END.