voici le code que j'ai envisagé.
celui-ci est court et a simplement pour but de donner toutes les solution d'arrangement de "o" lettre parmis "n" (les lettres sont considérées en ordre croissant.)
voici le code que j'utilise :
la problème, est que celui qui fait une boucle infinie et afiche sans cesse
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
39
40
41
42 /** * * @author (laurent) * @version (avril 2007) */ class ls { public static void main() { // main int o=3;//nobre de tirages char n='d'; // ensemble de départ int temp; int tmp; long tot=0; // compteur char[] tab1= new char[4]; for (int i=0; i<tab1.length; i++){ tab1[i] = 'a'; } char[] tab2= new char[4]; for (int j=0; j<tab2.length; j++){ tab2[j] = 'd'; } while(tab1!=tab2){ temp=tab1[o]; tab1[o]=(char)temp++; for(int k=o;k<=0;k--){ if(tab1[k]>n){ tab1[k]='a'; tmp=tab1[k-1]; tab1[k-1]=(char)(tmp++); }//fin if }//fin for System.out.println(tab1); tot=tot+1; }//fin while System.out.println(""); System.out.println("FIN ("+tot+" résultats trouvés"); } // main } // class
aaaa
aaaa
...
quelqu'un voit il mon erreur?
merci à vous
Partager