Écrire une fonction Python qui simule N lancers d'un dé équilibré et…
Exercice d'entraînement · niveau 3 (difficile) · mathématiques (première), chapitre 11 — Variables aléatoires réelles · Dispersion et échantillonnage
Énoncé
Écrire une fonction Python qui simule lancers d'un dé équilibré et renvoie la moyenne des résultats. Vérifier expérimentalement qu'elle se rapproche de quand grandit. Puis, pour , estimer la proportion des simulations dont la moyenne s'écarte de de plus de , où . (La proportion attendue est d'environ : c'est le complémentaire de la propriété admise dans le cours. Commencer par retrouver .)
Corrigé
Retrouvons d'abord . Pour un dé équilibré,
Le programme.
from random import randint
def moyenne_des(N):
# Moyenne de N lancers d'un de equilibre
total = 0
for k in range(N):
total = total + randint(1, 6)
return total / N
def proportion_hors_bande(N_simul, n):
# Proportion des N_simul echantillons de taille n dont la moyenne
# s'ecarte de 3.5 de plus de 2*sigma/racine(n)
sigma = (35 / 12) ** 0.5
seuil = 2 * sigma / n ** 0.5
hors = 0
for k in range(N_simul):
if abs(moyenne_des(n) - 3.5) > seuil:
hors = hors + 1
return hors / N_simul
print(moyenne_des(10), moyenne_des(1000), moyenne_des(1000000))
print(proportion_hors_bande(10000, 100))
Ce qu'on observe. La première ligne affiche typiquement quelque chose comme — — : la moyenne se rapproche de quand grandit, sans jamais l'atteindre exactement.
Pour , le seuil vaut , et la seconde ligne affiche une valeur voisine de à : environ à des échantillons sortent de la bande, donc à y restent — ce qu'annonçait le « fait d'expérience » du cours.
Honnêteté sur le nombre : c'est un ordre de grandeur, pas une égalité. La proportion exacte dépend de la loi de et de ; ici elle avoisine hors bande. C'est d'ailleurs pourquoi le cours parle d'« environ » et de « fait d'expérience » : la justification complète relève du théorème central limite, en études supérieures.
Piège de programmation : proportion_hors_bande(10000, 100) lance dés. Commencer par des valeurs plus petites pour vérifier que le code tourne, avant de le lancer « en grand ».
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.