❗ Calcul de la Factorielle : Cours & Principes

📖 1. Définition

La factorielle d’un entier naturel n (notée n!) est le produit de tous les entiers strictement positifs inférieurs ou égaux à n. Par convention, 0! = 1.

Exemple : 7! = 1 × 2 × 3 × 4 × 5 × 6 × 7 = 5040

⚙️ 2. Méthode itérative de calcul

Le calcul itératif consiste à initialiser un accumulateur à 1 (f ← 1) et à le multiplier successivement par tous les entiers de 1 à n à l’aide d’une boucle Pour.

⚠️ Note très importante :

L’utilisation de fonctions mathématiques intégrées comme math.factorial() en Python est strictement hors programme. Vous devez obligatoirement implémenter la logique itérative du produit cumulé.

📊 Simulation Visuelle & Algorithme Animé

Exploration pas à pas du calcul du produit factoriel.

📊 Espace de simulation

Méthode Itérative (Produit cumulé)

Trace…

Suivi de l’exécution (i, f) :

i – i
f – f

Algorithme Factorielle :

Fonction Factorielle(n : Entier) : Entier
Début
    f ← 1
    Pour i de 1 à n Faire
        f ← f * i
    FinPour
    Retourner f
Fin.

TDOL

Objet Type
i, f Entier

📝 3. Exercice d’application

Situation : Dans un laboratoire de statistiques combinatoires, un chercheur doit calculer le nombre de permutations possibles pour N objets alignés. Ce nombre correspond mathématiquement à la factorielle de N.

Écrire un programme modulaire permettant de saisir un entier N (compris entre 0 et 12), de calculer sa factorielle à l’aide d’une fonction, et d’afficher le résultat.

Donner la solution sous forme d’algorithme et sa traduction en programme Python, ainsi qu’une simulation interactive dédiée.

Simulation de l’Exercice (Permutations de N Objets)

Résultat des permutations et trace d’exécution…
i – i
f – f

Correction détaillée

💻 Programme Principal (Algorithme)

Algorithme Calcul_Permutations
DEBUT
  Répéter
    Ecrire("Donner un entier N (0..12) : ")
    Lire(N)
  Jusqu'à N dans [0..12]
  Res ← Factorielle(N)
  Ecrire("Le nombre de permutations possibles est : ", Res)
FIN

📋 Table de Déclaration des Objets Globaux (TDOG)

Objet Type / Nature
N, Res Entier
Factorielle Fonction

⚙️ Fonction Factorielle & TDOL

Fonction Factorielle(n: Entier) : Entier
DEBUT
  f ← 1
  Pour i de 1 à n Faire
    f ← f * i
  Fin Pour
  Retourner f
FIN

TDOL : i, f (Entiers)

🐍 Version Python (Traduction complète)

def factorielle(n):
    f = 1
    for i in range(1, n + 1):
        f *= i
    return f

# Programme Principal
n = int(input("Donner un entier N (0..12) : "))
while not (0 <= n <= 12):
    n = int(input("Erreur. Entrer N entre 0 et 12 : "))

Res = factorielle(n)
print("Le nombre de permutations possibles est :", Res)