suivant: Des calculs de moyenne
monter: Pour s'amuser avec les
précédent: Les anniversaires de n
Table des matières
Index
On considère les 4 dés suivants :
- les faces du dé A ont comme points : 0,0,4,4,4,4,
- les faces du dé B ont comme points : 1,1,1,5,5,5,
- les faces du dé C ont comme points : 2,2,2,2,6,6,
- les faces du dé D ont comme points : 3,3,3,3,3,3,
Chacun des joueurs choisit un dé. À chaque lancer, celui
qui a le meilleur score marque 1 point. La partie se compose de 12 lancers.
On veut simuler ce jeu pour que l'on puisse jouer contre l'ordinateur.
L'ordinateur tire au hasard un dé, vous donne son choix, puis vous
choisisez un parmi les 3 dés qui restent. Puis vous jouez....
Quel dé faut-il choisir pour gagner contre l'ordinateur ?
On numérote les faces de chaque dé : par exemple, par ordre croissant des
points des faces, ainsi pour le dé A les faces 0,1 ont comme
points 0 et les faces 2,3,4,5 ont comme points 4.
Pour jouer avec un dé, on tire au hasard un nombre entier entre 0 et
5 (rand(6)) pour voir sur quelle face tombe le dé, puis on regarde le
nombre de points de cette face. Ce nombre dépend du dé choisi.
On écrit donc une fonction qui renvoie pour chaque dé la valeur de
la face n du dé.
rande(des,n):={
if (des=="A"){if (n==0 or n==1) return 0 ;
else return 4;};
if (des=="B"){if (n==0 or n==1 or n==2) return 1;
else return 5;};
if (des=="C"){if (n==4 or n==5) return 6;
else return 2;};
return 3;
}:;
Puis on écrit le programme qui correspond a une partie (12 lancers pour
chacun) et qui renvoie la liste des scores ordinateur,joueur.
jeuwin():={
local deo,dem,po,pm,scoro,j;
deo:=char(rand(4)+65);
print("j'ai choisi le dé "+ deo);
InputStr("votre choix",dem);
scoro:=0;
for (j:=0;j<12;j++){
po:=rande(deo,rand(6));
pm:=rande(dem,rand(6));
print(po,pm);
if (po>pm) scoro:=scoro+1;
}
return [scoro,12-scoro];
}
:;
On peut aussi utiliser les listes A,B,C,D pour representer chaque dé, et le programme devient beaucoup plus simple (on n'a pas besoin de la fonction
rande !!!!
jewin():={
local deo,dem,po,pm,scoro,j,A,B,C,D;
deo:=char(rand(4)+65);
print("j'ai choisi le dé "+ deo);
A:=[0,0,4,4,4,4];
B:=[1,1,1,5,5,5];
C:=[2,2,2,2,6,6];
D:=[3,3,3,3,3,3];
input("votre choix",dem);
scoro:=0;
deo:=expr(deo);
for (j:=0;j<12;j++){
po:=deo[rand(6)];
pm:=dem[rand(6)];
print(po,pm);
if (po>pm) scoro:=scoro+1;
}
return [scoro,12-scoro];
}
:;
On peut ensuite faire plusieurs parties. On tape :
score:=[0,0];
puis par exemple
score:=score+jewin()
plusieurs fois et on obtient les scores cumulés
Pour savoir quel dé il faut choisir, on cherche la probabilité
que l'ordinateur gagne selon les différents choix :
- l'ordinateur a choisi le dé A,
Il faut donc choisir le dé B pour gagner avec une probabilité de 2/3.
- l'ordinateur a choisi le dé B,
Il faut donc choisir le dé C pour gagner avec une probabilité de 2/3.
- l'ordinateur a choisi le dé C,
- si vous choisissez le dé D,
L'ordinateur gagne si le dé C fait six,
donc
P(nC > nD) = (2/6) = 1/3
- si vous choisissez le dé B,
cas déjà vu :
P(nC > nB) = 1 - P(nB > nC) = 2/3
- si vous choisissez le dé A,
cas déjà vu :
P(nC > nA) = 1 - P(nA > nC) = 5/9
Il faut donc choisir le dé D pour gagner avec une probabilité de 2/3.
- l'ordinateur a choisi le dé D,
- si vous choisissez le dé A,
cas déjà vu :
P(nD > nA) = 1 - P(nA > nD) = 1/3
- si vous choisissez le dé B,
cas déjà vu :
P(nD > nB) = 1 - P(nB > nD) = 1/2
- si vous choisissez le dé C,
cas déjà vu :
P(nD > nC) = 1 - P(nC > nD) = 2/3
Il faut donc choisir le dé A pour gagner avec une probabilité de 2/3.
Remarque
La relation "le dé N1 gagne le dé N2" n'est pas transitive,
en effet:
le dé B gagne le dé A,
le dé C gagne le dé B,
le dé D gagne le dé C,
le dé A gagne le dé D,
De plus, le jeu est trompeur car le choix ne depend pas du score moyen de
chaque dé, en effet :
le dé A fait en moyenne un score de 8/3,
le dé B fait en moyenne un score de 3,
le dé C fait en moyenne un score de 10/3,
le dé D fait en moyenne un score de 3 et pourtant le dé D
l'emporte sur le dé C de moyenne 10/3 mais il perd contre le dé
A qui n'a qu'une moyenne de 8/3 !
suivant: Des calculs de moyenne
monter: Pour s'amuser avec les
précédent: Les anniversaires de n
Table des matières
Index
Documentation de giac écrite par Renée De Graeve