Dans notre article sur l’origine du nom Google ou encore dans celui sur les anagrammes, nous avons déjà parlé plusieurs fois de la notion de factorielle. Dans cet article nous allons nous attarder sur cette notion plus en profondeur.
Définitions
Définition par un produit
Soit n un entier naturel. La formule pour écrire factorielle de n est alors définie par :
n! = \prod_{k=1}^n i = 1\times 2 \times 3 \times \ldots \times n
Avec
\prod_{i=1}^n
qui signifie “produit pour i allant de 1 à n”
Bien qu’on ait envie de dire “n factorielle”, n! se prononce “Factorielle n” ou “Factorielle de n”. Ce qui veut dire qu’on applique la fonction factorielle à n. On a tendance à prononcer “n factorielle”, comme si le point d’exclamation signifie factorielle, mais il faut plutôt le voir comme une fonction.
Exemple :
3! = 3x2x1 = 6
5! = 5x4x3x2x1 = 120
Définition par récurrence
On pose 0! = 1
On a ensuite
(n+1)! = n! \times (n+1)
Cette définition peut être plus pratique dans certains calculs.
Exemple :
On veut calculer 3!
On calcule d’abord 1! = 0! x 1 = 1 x 1 = 1.
Puis, 2! = 1! x 2 = 1 x 2 = 2
Et enfin, 3! = 2! x 3 = 2 x 3 = 6
On a donc 3! = 6
On désire maintenant calculer 5!. On peut alors repartir du résultat précédent, 3! = 6
On en déduit que 4! = 3! x 4 = 6 x 4 = 24
Puis finalement, 5! = 4! x 5 = 24 x 5 = 120
Calcul de la factorielle sur Python
Voici un code permettant de calculer la factorielle sur Python :
def factorielle(n):
# Cas de base
if n == 0:
return 1
# Cas récursif
else:
return n * factorielle(n-1)
# Test de la fonction
print(factorielle(5)) # Affiche 120
print(factorielle(0)) # Affiche 1
Quelques propriétés
Croissance très rapide de la factorielle
Pour dépasser 1 000, il suffit de dépasser 7 : 7! = 5440
Pour dépasser 1 000 000, il suffit de dépasser 10 : 10! = 3 628 800
100! = 93326215 4439441526 8169923885 6266700490 7159682643 8162146859 2963895217 5999932299 1560894146 3976156518 2862536979 2082722375 8251185210 9168640000 0000000000 0000000000 => Un nombre plutôt énorme et on n’est qu’à 100.
Une approximation à un facteur 10 près de 1 000 000! est 105 565 709. Vu comme cela, on n’a pas l’impression que c’est énorme. Mais il faut se représenter un nombre avec 5 565 710 chiffres et se rendre compte à quel point ce serait gigantesque si on voulait l’écrire en entier.
Quelques valeurs
Vous devriez connaitre au moins les 6 premières pour gagner du temps :
- Factorielle de 0 : 0! = 1
- Factorielle de 1 : 1! = 1
- Factorielle de 2 : 2! = 2
- Factorielle de 3 : 3! = 6
- Factorielle de 4 : 4! = 24
- Factorielle de 5 : 5! = 120
- Factorielle de 6 : 6! = 720
- Factorielle de 7 : 7! = 5440
- Factorielle de 8 : 8! = 40320
- Factorielle de 9 : 9! = 362880
- Factorielle de 10 : 10! = 3628800
- Factorielle de 52, c’est à dire le nombre de manières de mélanger un jeu de cartes : 52! ≈ 8,06×10^67. De manière exacte, 52! = 80658175 1709438785 7166063685 6403766975 2895054408 8327782400 0000000000
- Factorielle de 100 : 100! ≈ 9,3.10157 et pour être exact : 100! = 93326215 4439441526 8169923885 6266700490 7159682643 8162146859 2963895217 5999932299 1560894146 3976156518 2862536979 2082722375 8251185210 9168640000 0000000000 0000000000
Formule de Stirling
Pour les plus aguerris, voici un équivalent pour les factorielles, dont nous avons fait la démonstration dans cet article :
n! \sim \sqrt{2\pi n} \left( \frac{n}{e}\right)^n
Extensions liées à la factorielle
Hyperfactorielle
L’Hyperfactorielle, notée H(n), est définie comme le produit des n premiers nombres élevées à leur propre puissance, c’est-à-dire :
H(n) = \prod_{k=1}^n k^k = 1^1 .2^2 \ldots(n-1)^{n-1}.n^n
Exemple : H(4) = 11.22.33.44 = 1 x 4 x 27 x 256 = 27648
Superfactorielle
Neil Sloane et Simon Plouffe ont défini la superfactorielle de n, notée sf(n), comme le produit des n premières factorielles :
Sf(n) = \prod_{k=1}^nk! = 1!.2! \ldots (n-1)!n!
Exemples :
Sf(3) = 1! \times 2! \times 3! = 1\times 2 \times 6 =12 \\ Sf(5) = 1! \times 2! \times 3! \times 4! \times 5! = 1 \times 2 \times 6 \times 24 \times 120 = 34560
La primorielle
La primorielle d’un entier naturel n est le produit de tous les nombres premiers inférieurs ou égaux à n. Elle se note n#.
Exemples :
- 10# = 2 × 3 × 5 × 7 = 210.
- 15# = 2 x 3 x 5 x 7 x 11 x 13 = 30 030
Paul Erdős a montré en 1932 que pour tout n, n# ≤ 4n.
Quelques applications :
- Compter le nombre d’anagrammes
- Le paradoxe des anniversaires
- Le nombre de façons d’arranger un Rubik’s cube
Ranger des jeux de cartes
On prend un jeu de 52 cartes.
Le nombre de façons de le ranger s’écrit avec des factorielles. On a 52 cartes pour la carte du dessus. Il reste 51 cartes pour le choix suivant. Et ensuite 50 pour la troisième carte. Puis 49.. On a donc en nombre de choix :
52\times 51 \times 50 \times 49 \times \ldots \times 1 \approx 8,07.10^{67}
Notre calculateur
Vous voulez vérifier certaines valeurs de factorielle ? Alors utilisez notre calculateur de factorielles :
Cet article vous a plu ? Alors retrouvez nos 5 derniers articles sur le même thème :
- Matrices : Définition
- Le chiffrement de Playfair : Cours et exercice
- Barycentre : Cours et propriétés
- Limites de suites : Cours et exercices corrigés
- Théorème des gendarmes (fonctions) : Cours et exercices corrigés
Attention ! Il y a une faute dans la formule de Stirling, il manque un n sous la racine !
Pourriez-vous corriger la formule s’il vous plait ?
Bonne journée
Bonjour,
C’est corrigé merci beaucoup !
Bonjour, il semblerait qu’il y ait une erreur dans la définition de la superfactorielle, il manque le point d’exclamation derrière le k, ainsi que les indices sur le produit.
Bonne journée
C’est corrigé aussi !
N’hésitez pas à nous dire si vous voyez d’autres erreurs !