7. Algo 05.01
alessandro.bogliolo@uniurb.it
Eseipassi
dipendonodaidati?
Calcolo di N!, che si legge N fattoriale. Prodotto dei primi
N numeri interi
Il ciclo invoca N volte la funzione moltiplica per calcolare:
• La prima volta: 1*1
• La seconda volta: 1*2
• La terza volta: 2*3
• La quarta volta: 6*4
• …
• L’ultima volta: (N-1)!*N
Per il generico valore di i, si moltiplica i per il valore
di fact già calcolato, che vale (i-1)!
Se l’unica istruzione elementare di cui disponiamo è
l’incremento unitario, il numero di passi complessivi è pari a
1*1 + 1*2 + 2*3 + 6*4 + … + (N-1)!*N
Come dire:
1! + 2! + 3! + 4! + 5! + … + N!
Dominato da
(N+1)!
9. Algo 05.01
alessandro.bogliolo@uniurb.it
Qualipassi
sonodavveroelementari? Addizione e moltiplicazione
possono essere considerate
istruzioni elementari solo se:
1. il loro tempo di esecuzione
può essere ritenuto costante
indipendentemente dal
valore degli operandi
2. l’esecutore le conosce senza
bisogno di descriverle in
termini di passi più semplici
Nei calcolatori questo è vero finché i
numeri non superano le dimensioni
della rappresentazione adottata da
chi li ha progettati