Bonjour, pouvez vous m’aider pour se devoir de première ? On s'intéresse au classement à l'arrivée d'une course à laquelle participe 6 athlètes. 1. Quel est le
Mathématiques
Lilalilou
Question
Bonjour, pouvez vous m’aider pour se devoir de première ?
On s'intéresse au classement à l'arrivée d'une course à laquelle
participe 6 athlètes.
1. Quel est le nombre de classements possibles de ces six athlètes sans ex-
aequo ?
Ce nombre est appelé factorielle 6. Plus généralement, la factorielle d'un nombre
entier naturel n non nul est le produit des nombres entiers strictement positifs
inférieurs ou égaux à n.
On la noten! et on lit « factorielle n » ou « n factorielle ». Par convention, 0=1.
Soit (un) la suite telle que, pour tout entier naturel n non nul, Un = n!
2. Donner une expression explicite de (un) en fonction de n sans la notation
factorielle.
3. Exprimer Un+1 en fonction de un. En déduire une définition par récurrence
de la suite (un).
4. Ecrire un programme Python calculant n !. Quelle est la valeur renvoyée pour
n = 20.
On s'intéresse au classement à l'arrivée d'une course à laquelle
participe 6 athlètes.
1. Quel est le nombre de classements possibles de ces six athlètes sans ex-
aequo ?
Ce nombre est appelé factorielle 6. Plus généralement, la factorielle d'un nombre
entier naturel n non nul est le produit des nombres entiers strictement positifs
inférieurs ou égaux à n.
On la noten! et on lit « factorielle n » ou « n factorielle ». Par convention, 0=1.
Soit (un) la suite telle que, pour tout entier naturel n non nul, Un = n!
2. Donner une expression explicite de (un) en fonction de n sans la notation
factorielle.
3. Exprimer Un+1 en fonction de un. En déduire une définition par récurrence
de la suite (un).
4. Ecrire un programme Python calculant n !. Quelle est la valeur renvoyée pour
n = 20.
1 Réponse
-
1. Réponse Aeneas
Bonjour,
1. Il y en a 6x5x4x3x2x1 = 720
2. un = n x (n-1) x ... x 1
3. un+1 = (n+1) x un
4. Deux solutions proposées (je préfère la première)
def factoriel(n):
resultat = 1
for i in range(1,n+1):
resultat *= i
return resultat
def factoriel(n):
if n == 0:
return 1
else:
return n*factoriel(n-1)
Pour n=20, le programme renvoie : 2432902008176640000