Odpowiedzi

2010-01-02T23:36:21+01:00
Rekurencyjny:
int silnia(int n) {
return n>1?n*silnia(n-1):1;
}

Pętla:
int silnia(int n) {
int wynik=1;
while(n>1) wynik*=n--;
return wynik;
}

Obydwa podane algorytmy mają złożoność liniową, są napisane w języku C.