Guiiil
Messages postés13Date d'inscriptionjeudi 10 janvier 2008StatutMembreDernière intervention10 juin 2009
-
5 févr. 2008 à 13:21
Guiiil
Messages postés13Date d'inscriptionjeudi 10 janvier 2008StatutMembreDernière intervention10 juin 2009
-
7 févr. 2008 à 13:24
<html>
<head>
<title>Jeu du 21 (statistiques)</title>
</head>
Jeu du 21 (statistiques)
<HR>
Deux joueurs lancent un dé l'un après l'autre. Les points obtenus s'ajoutent, le
premier qui atteint ou dépasse 21 a gagné.
Qui a le plus de chances de gagner ?
Le joueur 1 qui commence à lancer ou le joueur 2 ?
Pour nous faire une opinion, simulons 1000 parties et observons les résultats.
<SCRIPT LANGUAGE="JavaScript">
var score1=0;
var score2=0;
function unePartie() {
var total=0;
var joueur=1;
var de=0;
while (total<21) {
de=1+Math.floor(Math.random()*6);
total+=de;
joueur=14-joueur;
}
joueur=14-joueur;
if (joueur==1) score1++;
else score2++;
}
for (var i=0; i<1000; i++) unePartie();
document.writeln("
Victoires du joueur 1 : ",score1);
document.writeln("
Victoires du joueur 2 : ",score2);
</SCRIPT>
<HR>
[21.html Recommencer]
</html>
J'ai trouvé ce programme sur le net, et je m'interrogeais, à quoi sert le " joueur=14-joueur;"?
C'est juste par culture personnelle ^^, ce n'est pas d'une extreme urgence.
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 5 févr. 2008 à 19:26
Bonjour,
En observant la valeur successive de joueur tu te rends compte qu'il ne vaut que 13 ou 1 alternativement...
C'est une méthode pour faire tourner une variable,
cela permet dans ce cas de faire jouer le joueur 13 et le joueur 1 à tour de rôle, regarde comment il incrémente le score.
exemple :
k = 0;
for( i = 0; i < 1000; i++){
if( k)
document.write( 'Ligne paire
');
else
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 6 févr. 2008 à 17:32
Bonjour,
Tout à fait, il représente en fait 2 états, donc un bollean suffit...
la fonction aurait pu s'écrire
//------------------ function unePartie() {
var total = 0;
var FirstJoueur = true;
var de = 0;
while (total<21) {
de = 1 +Math.floor(Math.random() *6);
total += de;
FirstJoueur = !FirstJoueur;
}
FirstJoueur = !FirstJoueur;
if( FirstJoueur)
score1++;
else
score2++;
}
voilou !
;O)