Fattoriale

Definizione iterativa

fattoriale1

Esempio

Per N=5

5! = 5*4*3*2*1 = 120
Risp:=1;
for I:=N downto 2 do
    Risp:=Risp*i;

oppure…

Risp:=1;
For i:=2 to N do
    Risp:=Risp*i;

Funzione iterativa

Function FattIter(N: Integer): LongInt;
Var
   i, Risp: LongInt;
Begin
   Risp:=1;
   For i:=2 to N do
      Risp:=Risp*i;
   FattIter:=Risp;
End;

Definizione ricorsiva

fattoriale2

Oppure, con notazione funzionale

fattoriale3

Esempio

Per N=5

5! = 5*4! = 5*24 = 120
4! = 4*3! = 4*6 = 24
3! = 3*2! = 3*2 = 6
2! = 2*1! = 2*1 = 2
1! = 1
Function FattRic(N: Integer): LongInt;
Begin
   If(N <; 2) Then
      FattRic:=1
   Else
      FattRic:=N*FattRic(N-1);
End;