void main() { int i; int de1; int de2; int somme; int [] frequence; // Résultat possible pour la somme: // le plus petit possible 1 + 1 = 2 // le plus grand possible 6 + 6 = 12 // donc 12 - 2 + 1 = 11 valeurs possibles: 2,3,4,5,6,7,8,9,10,11,12 frequence = new int[11]; // Attention, le problème c'est encore dans les indices des cases du tableau. // On veut un tableau frequence, dont la case: // 0 contient le nombre de fois où la somme est 2 // 1 contient le nombre de fois où la somme est 3 // 2 contient le nombre de fois où la somme est 4 // ... // 10 contient le nombre de fois où la somme est 12 // Idée: la somme est tjs entre 2 et 12, donc si on retire 2 à la somme on a tjs un // nombre entre 0 et 10 => parfait on peut l'utiliser comme un indice du tableau! for(i=1; i<=100; i++) { // random(1,7) tire un nombre entre 1 et 7-1 = 6 // je tire le premier de de1 = random(1,7); // je tire le deuxieme de de2 = random(1,7); // je fais la somme somme = de1 + de2; // j'augmente de un la valeur contenue dans la case d'indice somme-2 du tableau frequence[somme-2]++; } // Affichage du tableau for(i=0; i<10; i++) { // Astuce: cette fois on rajoute 2 à i pour afficher la valeur correcte de la somme, // par contre on utilise i directement pour accéder aux cases du tableau. println("La somme " + (i+2) + " est apparue " + frequence[i] + " fois."); } }