Il est possible d'utiliser une fonction comme paramètre d'une procédure ou d'une fonction. Cependant, ceci reste relativement rare. Ce procédé est assez peu utilisé, et ne fait pas partie du programme de ce cours.
program DEMONSTRATION;
var
TAN, COT, LOG_A : real;
function QUOTIENT (function NUM, DEN, X : real) : real;
begin
QUOTIENT := NUM (x) / DEN (x); {utilisation des fonctions NUM et DEN}
end;
begin
readln (x);
TAN := QUOTIENT (sin, cos, x);
writeln (TAN);
COT := QUOTIENT (cos, sin, x);
writeln (COT);
end.
On peut faire de même avec les paramètres procédures.