Le Chevalier de Méré a vécu à la cour du roi Louis XIV
On lance 4 fois un dé et on compte le nombre de fois où est sorti le nombre 6
Si il y a au moins un six alors la banque a gagné sinon le joueur a gagné
nb_six <- 0
Répéter 4 fois
début
On lance un dé
si dé = 6
début
nb_six <- nb_six + 1
fin
fin
si nb_six >= 1
début
afficher("La banque a gagné")
sinon
afficher("le joueur a gagné")
On peut simplifier cet algorithme car on peut arrêter la répétition dès qu'on obtient un six, tout en ne dépassant pas les 4 répétitions
de <- 0
nb_lancers <- 0
Tant que de différent de 6 et nb_lancers < 4
début
de <- tirer un nombre au hasard entre 1 et 6
nb_lancers <- nb_lancers + 1
fin
si de = 6
début
afficher("La banque a gagné")
sinon
afficher("le joueur a gagné")
La traduction en python est
from random import *
de = 0
nb_lancers = 0
while de != 6 and nb_lancers < 4:
de = randint(1,6)
nb_lancers = nb_lancers + 1
if de == 6:
print("La banque a gagné")
else:
print("le joueur a gagné")
Compléter le programme précédent pour simuler 1000 parties et compter le nombre de fois où la banque a gagné
(Introduire une variable significative)
Ensuite calculer la fréquence de gain de la banque pour 1000 parties et afficher cette fréquence
Vous allez aider le Chevalier de Méré à mettre au point un nouveau jeu. Il s'agit de répéter un nombre N de fois le lancer de deux dés, (N est une valeur autour de 20), cette fois ci la banque gagne lorsqu'il y a au moins un double six. Vous devez trouver la plus petite valeur de N de telle sorte que la banque a plus de chance de gagner que le joueur
Modifier le programme python du premier jeu afin de lancer deux dés cette fois-ci, en ayant deux variables de1 et de2
Il s'agit aussi de modifier la condition de répétition du "while": Dans un premier temps se contenter d'écrire:
while not(de1 == 6 and de2 == 6) and nb_lancers < N:
Dans un second temps prouver de manière graphique avec le langage des évènements du calcul des probabilités que
$\overline{A \cap B} = \overline{A} \cup \overline{B}$
Autrement dit not(de1 == 6 and de2 == 6) est de1 != 6 or de2 != 6