Articolo originale: What is a Factorial? How to Calculate Factorials with Examples

Un fattoriale è un'operazione matematica che viene scritta come n! e rappresenta la moltiplicazione di tutti i numeri tra 1 e n.

Ad esempio, 3! si calcola come 3 x 2 x 1 (che è uguale a 6). Vediamo come funziona con qualche altro esempio.

Definizione di fattoriale

Il fattoriale di un numero si ottiene moltiplicando tutti i numeri tra 1 e il numero stesso, e si scrive come n!. Quindi il fattoriale di 2 è 2! (= 1 × 2).

Per calcolare un fattoriale devi sapere due cose:

  1. 0! = 1
  2. n! = (n - 1)! × n

Il fattoriale di 0 ha valore 1, e il fattoriale di un numero n è uguale al prodotto del numero n per il fattoriale di n-1.

Ad esempio, 5! è uguale a 4! × 5.

Ecco alcuni valori di fattoriali per darti un'idea migliore di come funziona un fattoriale:

fattoriale moltiplicazione risultato
0! 1 1
1! 1 1
2! 1 × 2 2
3! 1 × 2 × 3 6
4! 1 × 2 × 3 × 4 24
5! 1 × 2 × 3 × 4 × 5 120
6! 1 × 2 × 3 × 4 × 5 × 6 720
7! 1 × 2 × 3 × 4 × 5 × 6 × 7 5040
8! 1 × 2 × 3 × 4 × 5 × 6 × 7 × 8 40,320
9! 1 × 2 × 3 × 4 × 5 × 6 × 7 × 8 × 9 362,880

Per cosa si usano i fattoriali?

In pratica, un fattoriale è il numero delle diverse permutazioni possibili per un numero n di oggetti: 3 oggetti possono essere disposti esattamente in 6 modi diversi (espressi come 3!).

Ad esempio, vediamo tutte le disposizioni possibili per tre oggetti, A, B e C:

ABC
ACB
BAC
BCA
CAB
CBA

E infatti, 3! = 6.

Come calcolare il fattoriale di 0

Se consideriamo il fattoriale da questo punto di vista, qual è il fattoriale di 0?

Bene, in quanti modi diversi possiamo disporre 0 elementi?

Esiste esattamente 1 modo per disporre 0 elementi, ovvero fare una sequenza di zero elementi.

Casi di utilizzo dei fattoriali

I fattoriali vengono utilizzati tipicamente per problemi legati al numero di possibili disposizioni di elementi. Vediamo alcuni esempi.

Problema 1: le lettere nella parola "camper"

In quanti modi diversi puoi disporre le lettere della parola camper?

La parola camper ha 6 lettere, quindi il numero di possibili disposizioni è dato dal fattoriale di 6: 6! = 6 × 5 × 4 × 3 × 2 × 1 = 720. Un numero discretamente grande da trovare a mano.

Problema 2: estrazione di palline colorate

Supponiamo di avere tre palline – una verde, una blu e una gialla – in un sacco.

Se estrai le tre palline in sequenza, quale probabilità c'è di ottenere prima la gialla, la verde per seconda e la blu per ultima?

Forse ti stai chiedendo cos'hanno a che fare i fattoriali con le probabilità – lo vedrai in un attimo.

Ci sono 6 modi possibili in cui le palline possono essere estratte: 3! = 6.

C'è 1 possibilità sul numero totale di possibili sequenze di ottenere la sequenza gialla-verde-blu, ovvero 1/(3!) o 1/6 o il 16.7% di possibilità di ottenere il risultato desiderato.

Come calcolare un fattoriale in JavaScript

Ci sono due modi per calcolare un fattoriale in JavaScript:

Come calcolare un fattoriale in JS con la ricorsione

Torniamo indietro alle due cose da sapere per calcolare un fattoriale – cioè 0! = 1 e n! = (n - 1)! × n. Possiamo usare la prima per creare il caso base della funzione ricorsiva, perché in questo caso conosciamo già il risultato.

function fattoriale(n) {
  if (n === 0) {
      return 1;
  }
}

La seconda cosa de sapere su come calcolare un fattoriale, n! = (n - 1)! × n, può essere il caso ricorsivo.

function fattoriale(n) {
    if (n === 0) {
        return 1;
    } else {
        return fattoriale(n-1) * n;
    }
}
    

Come calcolare un fattoriale in JavaScript con un loop while

Abbiamo già detto che 0! = 1. Per calcolare il fattoriale di un numero con un loop possiamo inizializzare la variabile a 1, e moltiplicare i numeri da n a 1 per la variabile all'interno del loop.

In questo modo, se l'input non è maggiore di 1, l'output sarà 1.

function fattoriale(n) {
    let risultato = 1;
    for (n > 1) {
        risultato *= n;
        n--;
    }
    return risultato;
}

Conclusione

Il fattoriale è un'operazione molto importante da conoscere se sei interessato al calcolo statistico e delle probabilità.

In questo articolo, abbiamo imparato come calcolare un fattoriale, una semplice applicazione e abbiamo visto come calcolare un fattoriale in JavaScript.

Grazie per aver letto questo articolo! Buona programmazione.