Une application de jeu tire au hasard un entier entre et , chaque entier ayant la même probabilité. Le joueur gagne la partie si est un multiple de . Un joueur fait une série de parties indépendantes ; est le nombre de parties gagnées. Chaque partie coûte € et chaque partie gagnée rapporte euros. Le programme utilisé est :
from random import randint
def partie():
N = randint(1, 20)
if N % 3 == 0:
return 1
return 0
def serie(n):
X = 0
for i in range(n):
X = X + partie()
return X- 1. suit une loi uniforme : = suit la loi uniforme sur : et .
- 2. Démontrer que la probabilité de gagner une partie vaut Rédaction attendue. Les multiples de compris entre et sont , , , , et : il y en a . Les valeurs de étant équiprobables, . Dans le programme,
N % 3est le reste de la division de par : le testN % 3 == 0est vrai exactement pour ces valeurs, etpartie()renvoie alors . - 3. (au dix-millième)Chaque partie est une épreuve de Bernoulli (succès « gagner », ) ; les parties sont identiques et indépendantes : suit , et
serie(8)en renvoie une réalisation. . - 4. (au dix-millième), donc .
- 5. = , et .
- 6. Le gain net sur la série est . Valeur de qui rend le jeu équitable : (fraction)Par linéarité, . Le jeu est équitable si , soit €.
- 7. L’organisateur fixe . = €€ : en moyenne, l’organisateur gagne € par série de parties.
- 8. Écrire une fonction Python
estim(m)qui renvoie, sur séries simulées de parties, la fréquence des séries comportant au moins parties gagnées. Nombre d’appels àpartie()lors de l’appelestim(1000):Rédaction attendue.def estim(m): c = 0 for j in range(m): if serie(8) >= 2: c = c + 1 return c / mLa boucle appelleserie(8)fois, et chaque appel deserie(8)appellepartie()fois :estim(1000)simule parties. Pour grand, la fréquence renvoyée est proche de .