Une fonction est dite récursive si elle s'appelle elle même. On peut écrire la fonction factorielle sous la forme suivante.
function factorielle(n:integer):integer; (*calcul recursif de la factorielle de n*) begin if n=1 then factorielle:=1 else factorielle:=n*factorielle(n-1); end;