Supprimer un message
rfr
Comment vérifier cette théorie?
Simple ...
Faite un programme qui
- choisit aléatoirement ou se trouve la voiture.
- choisit une porte à la place du candidat
- qui choisit la porte ouverte par le présentateur et qui contient une biquette
- choisir la porte qui reste.
Faite tourner un million de fois le programme et vérifier le nombre de fois où la réponse est correcte. Dans le rapport réussite/échec, on doit tendre vers les 2/3 de réussite.
Je l'ai fait pour vous:
public class TeleEQ {
/**
* @param args
*/
public static void main(String[] args) {
byte [] doors = new byte[3];
int i = 0;
int succeeds = 0;
int fails = 0;
for (int retries = 0; retries < 1000000; retries++) {
for (i = 0; i < 3 ; i++)
doors[i] = 0;
Random r = new SecureRandom();
doors[r.nextInt(3)] = 1;
int candidateDoor = r.nextInt(3);
int presentatorDoor = 0;
for (i=0; i < 3; i++)
if (i != candidateDoor && doors[i] != 1)
presentatorDoor = i;
int alternateDoor = 0;
for (i=0; i < 3; i++)
if (i != presentatorDoor && i != candidateDoor)
alternateDoor = i;
if (doors[alternateDoor] == 1) {
succeeds++;
} else {
fails++;
}
}
System.out.println("Success: "+succeeds);
System.out.println("Fails : "+ fails);
}
}
Résultat:
Success: 666542
Fails : 333458
Funny isn't it?
Simple ...
Faite un programme qui
- choisit aléatoirement ou se trouve la voiture.
- choisit une porte à la place du candidat
- qui choisit la porte ouverte par le présentateur et qui contient une biquette
- choisir la porte qui reste.
Faite tourner un million de fois le programme et vérifier le nombre de fois où la réponse est correcte. Dans le rapport réussite/échec, on doit tendre vers les 2/3 de réussite.
Je l'ai fait pour vous:
public class TeleEQ {
/**
* @param args
*/
public static void main(String[] args) {
byte [] doors = new byte[3];
int i = 0;
int succeeds = 0;
int fails = 0;
for (int retries = 0; retries < 1000000; retries++) {
for (i = 0; i < 3 ; i++)
doors[i] = 0;
Random r = new SecureRandom();
doors[r.nextInt(3)] = 1;
int candidateDoor = r.nextInt(3);
int presentatorDoor = 0;
for (i=0; i < 3; i++)
if (i != candidateDoor && doors[i] != 1)
presentatorDoor = i;
int alternateDoor = 0;
for (i=0; i < 3; i++)
if (i != presentatorDoor && i != candidateDoor)
alternateDoor = i;
if (doors[alternateDoor] == 1) {
succeeds++;
} else {
fails++;
}
}
System.out.println("Success: "+succeeds);
System.out.println("Fails : "+ fails);
}
}
Résultat:
Success: 666542
Fails : 333458
Funny isn't it?