Синтаксически вызов функции не отличается от вызова процедуры:
Но вызов функции не является оператором. Обратиться к функции можно всюду, где допустимо использование значения типа, возвращаемого функцией. Обращение к функции может быть операндом в выражении, фактическим параметром-значением.
Пример 3. Программа для проверки, упорядочена ли по невозрастанию данная целочисленная последовательность длиной не больше 100:
Program sort_check;
const MaxLen=100;
type t_range =1.. MaxLen;
t_vect= array[t_range] of integer;
function is_sort(a: t_vect; n: t_range): boolean;
{Логическая функция проверяет, упорядочена ли по невозрастанию последовательность a длины n}
var i: t_ range;
begin i:=2;
while (i<=n) and (a[i-1]>=a[i]) do
i:= i+1;
is_sort:= i>n
end;
var i, n: t_range; a: t_vect;
begin write(‘Введите длину последовательности£’, MaxLen); read(n);
writeln(‘Введите члены последовательности’);
for i:= 1 to n do
read(a[i]);
if is_sort(n, a) then writeln(‘ Последовательность упорядочена’)
else writeln(‘ Последовательность неупорядочена’)
end.