Gambas 3/Gambas3LeLangage/Les boucles WHILE
Les boucles WHILE
[modifier | modifier le wikicode]Nous avons vu la boucle For qui est utilisée lorsque vous connaissez à l'avance le nombre d'itérations à faire.
Parfois vous ne saurez pas combien de fois la boucle devra être exécutée. Dans ce cas, vous utiliserez une des structures suivantes :
While...WEndpour While End (littéralement la fin de While)Repeat...UntilDo...Loop
Ces structures font le même travail mais le Do ... Loop est la version la plus moderne, la plus aboutie.
Si vous ne devez retenir qu'un chose, utilisez Do ... Loop qui est la structure la plus polyvalente et moderne !
WHILE
[modifier | modifier le wikicode]D'un point de vue algorithmique, cela donne : Tant que la condition est vraie, exécute le code suivant ... fin de la boucle.
Observez le code ci-dessous :
' Gambas module file
Public Sub Main()
While Second(Now) < 55
Print Format(Now, "s")
Sleep 1
Wend
End
L'application va fonctionner jusqu'à ce que l'heure atteigne 55 secondes !
La structure Do ... Loop étant souple peut s'utiliser de la même façon :
' Gambas module file
Public Sub Main()
Do While Second(Now) < 55
Print Format(Now, "s")
Sleep 1
Loop
End
Toutefois, la structure de contrôle Do ... Loop vous permet d'exécuter le code au moins une fois comme ceci :
Public Sub Main()
Do
Print Format(Now, "s")
Sleep 1
Loop While Second(Now) < 55
End
REPEAT ... UNTIL
[modifier | modifier le wikicode]Il existe une structure appelée Repeat ... Until qui fonctionne comme ceci :
' Gambas module file
Public Sub Main()
Repeat
Print Format(Now, "s")
Sleep 1
Until Second(Now) > 55
End
Là aussi, Do ... Loop fait le job :
' Gambas module file
Public Sub Main()
Do
Print Format(Now, "s")
Sleep 1
Loop Until Second(Now) > 55
End
Voilà, j'ai fini mon plaidoyer pour Do ... Loop !