Algoritmo per il calcolo del fattoriale

Si ricorda che il fattoriale di un numero x è dato da:

Dal momento che il fattoriale si calcola sui numeri interi, questa funzione ha un unico argomento di tipo intero. Il fattoriale di un numero è ancora un intero, per cui la funzione ritorna un intero. Poniamo x come nome dell’argomento, e fatt come nome del metodo, per ricordare che si tratta della funzione che calcola il fattoriale.

Resta ora da vedere come è fatta dentro la funzione, ossia quali istruzioni ci vanno messe. Si tratta di moltiplicare tutti i numeri interi da 1 fino al valore di x. Chiaramente, ci serve un ciclo. Iniziamo quindi dicendo che il fattoriale vale 1, e poi a ogni passo di questo ciclo moltiplichiamo il valore corrente del fattoriale per un numero crescente da 1 fino al valore di x. In altre parole, facciamo prima f=1, poi f=f*2 poi f=f*3, ecc. La funzione ritorna poi il valore di f a cui si arriva alla fine del ciclo. Questo metodo è simile a quello usato per calcolare la somma di elementi. Mentre nella somma si parte da 0 e si somma ad ogni passo un elemento, qui si parte da 1 e, ad ogni passo, si moltiplica il valore corrente per uno degli elementi. In più, sappiamo che gli elementi non sono dati, ma sono tutti gli interi da 1 a x.

Il programma in c# è il seguente:

class Fattoriale {
  static int fatt(int x) {
    int i;
    int f=1;

    for(i=1; i<=x; i=i+1) {
      f=f*i;
    }

    return f;
  }
  

Lascia un commento

Progetta un sito come questo con WordPress.com
Comincia ora