cs_Blanc
Messages postés181Date d'inscriptiondimanche 6 juillet 2003StatutMembreDernière intervention16 octobre 2006
-
30 janv. 2006 à 21:20
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 2019
-
31 janv. 2006 à 18:09
Voilà, j'ai un problème purement algorithmique:
J'aimerai lister toute les possibilité de compositions de l'alphabète avec 3 lettres:
a.a.a
a.a.b
a.a.c
...
a.b.a
a.b.b
...
Bon, le truc c'est que j'aimeai bien que le nombre de caractère puisse être varier.. alors si le nombre de caractère est 3, et qu'il est fixe, on peut tout simplement faire:
Dim a As Single
For a = 0 To 25
clé(0) = a
Dim b As Single
For b = 0 To 25
clé(1) = b
Dim c As Single
For c = 0 To 25
clé(2) = c
ListBox1.Items.Add(Chr(97 + clé(0)) & "." & Chr(97 + clé(1)) & "." & Chr(97 + clé(2)))
Next
Next
Next
Voilà.. le truc serai que la boucle for se réexecute.. ça serai du style ça.. mais ça marche pas complètement..:
Private Sub getmore()
Dim x As Single
For x = 0 To 25
clé(position) = x
If ListBox1.Items.Count = 25 ^ 2 Then Exit Sub
If position = 2 Then
position = 0
ListBox1.Items.Add(Chr(97 + clé(0)) & "." & Chr(97 + clé(1)) & "." & Chr(97 + clé(2)))
Else
position += 1
getmore()
End If
Next x
End Sub
le prob est que le getmore continue à se réexecuter.. alors prob.. si quelqu'un a une super idée.. ça serai piiire cool!
cs_Blanc
Messages postés181Date d'inscriptiondimanche 6 juillet 2003StatutMembreDernière intervention16 octobre 2006 30 janv. 2006 à 21:31
Haha!!
Ben en faite je viens de trouver.. il suffisais que j'arrête de recommencer la boucle en comptant le nombre de fois qu'elle était executée.. et par une petite variable (nbboucle) j'ai comme ça le nombre de fois éxecuté:
Private Sub getmore()
Dim x As Single
For x = 0 To 25
clé(position) = x
If ListBox1.Items.Count = 25 ^ 2 Then Exit Sub
If position = 2 Then
position = 0
ListBox1.Items.Add(Chr(97 + clé(0)) & "." & Chr(97 + clé(1)) & "." & Chr(97 + clé(2)))
Else
position += 1
If nbboucle < 3 Then
getmore()
Else : nbboucle += 1
End If
End If
Next x
End Sub
cs_Blanc
Messages postés181Date d'inscriptiondimanche 6 juillet 2003StatutMembreDernière intervention16 octobre 2006 31 janv. 2006 à 17:58
Oh!! super trop piire cool!! merci bien..! j'ai testé la tienne jannoman, elle marche très bien..! la tienne gobillot, je ne l'ai pas testée, mais je te fait confiance, elle me paraît bien aussi, je la testerai à l'occase..!