[debutant] boucle trop longue?
Salut à tous!
J'ai écris un code qui génère un paquet de carte mélangé. Mais à l'éxécution ma fenêtre ms-dos s'ouvre et rien ne s'affiche.
Mon processeur est à 100% même après 2 ou 3 minutes.
Je suis à peu près sûr que c'est ce code là qui fait ça :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| //Création d'un paquet mélangé et distribution en 2 paquets différents
int[] listeHasard = ArrayInt.genereRandomArrayAllDifferent(52);
//génère un tableau de 52 éléments avec des chiffres uniques allant de 1 à 52
Carte[] paquet = new Carte[52];
//tableau final avec des objets Carte dans le désordre
for (int i=0;i<listeHasard.length;i++){
int value;
int suit;
if (listeHasard[i]<14){
value = listeHasard[i]-1;
suit = 0;
Carte c = new Carte(value,suit,tab);
paquet[i] = c;
}
if (13<listeHasard[i] && listeHasard[i]<27){
value = listeHasard[i]-13-1;
suit = 1;
Carte c = new Carte(value,suit,tab);
paquet[i] = c;
}
if (26<listeHasard[i] && listeHasard[i]<40){
value = listeHasard[i]-26-1;
suit = 2;
Carte c = new Carte(value,suit,tab);
paquet[i] = c;
}
if (listeHasard[i]>39){
value = listeHasard[i]-39-1;
suit = 3;
Carte c = new Carte(value,suit,tab);
paquet[i] = c;
}
} |
Je sais que cette boucle sera effectuée 52 fois avec 4 tests à chaque fois, mais je pense que les processeurs actuels sont assez puissants pour encaisser ça! :calim2: