Simulation d'expériences aléatoires avec random.randint en Python

Seconde générale · Mathématiques 2nde

À retenir

• Importation obligatoire : from random import randint. • Fonction randint(a, b) : Renvoie un entier k aléatoire tel que a k b inclus. • Simulation d'un dé à 6 faces : de = randint(1, 6). • Simulation d'un lancer de pièce équilibrée : piece = randint(0, 1) (par exemple 0 pour Pile, 1 pour Face). • Compteur de succès : Incrémenter un compteur succes += 1 chaque fois que l'issue favorable apparaît, puis calculer la fréquence succes / N.

Le cours

La simulation informatique permet de reproduire des milliers de tirages aléatoires en quelques millisecondes afin d'observer la convergence des fréquences vers la probabilité théorique. En Python, la fonction randint(a, b) du module random simule un tirage équiprobable d'un entier entre a et b inclus. 1. La fonction randint Après from random import randint, l'appel randint(a, b) renvoie un entier au hasard entre a et b, les deux bornes incluses. Les b - a + 1 entiers possibles sont équiprobables, de probabilité 1/b - a + 1 chacun. Dé : randint(1, 6) (6 issues, probabilité 1/6 chacune). Pièce : randint(0, 1), en codant par exemple 1 pour Pile et 0 pour Face. 2. Simuler un événement de probabilité donnée Une urne contient 3 boules rouges et 7 bleues. On numérote les boules de 1 à 10 et l'on convient que les numéros 1, 2, 3 sont les rouges : le test randint(1, 10) <= 3 est vrai avec la probabilité 3/10. from random import randint def frequence_rouge(n): rouges = 0 for i in range(n): if randint(1, 10) <= 3: rouges = rouges + 1 return rouges / n La fonction répète n tirages avec remise, compte les rouges et renvoie la fréquence observée, qui se rapproche de 0,3 quand n devient grand. 3. Attention Chaque appel de randint produit un nouveau tirage : écrire 2 * randint(1, 6) ne simule pas deux dés, mais un seul dé dont on double le résultat.

Dans ce chapitre