Une boucle consiste à répéter un code tant qu'une condition ne s'applique pas.
Omniprésentes dans tout programme, les boucles se ressemblent à travers les langages, et l'on retrouve en Axe Parser les 3 principales boucles utilisées dans la plupart des langages :
- La boucle Repeat
- La boucle While
- La boucle For
La boucle Repeat se traduit par : "
répéter jusqu'à ce que telle condition soit vraie"
Syntaxe :
Code : Axe Parser - Sélectionner1
2
3
4
| :Repeat condition
:.code à exécuter
:End
:.On n'oublie pas le End ! |
Le code exécuté sera répété tant que la boucle n'est pas terminée.
Par exemple, je veut répéter jusqu'à ce que le nombre de vie soit égal à 0 :
Code : Axe Parser - Sélectionner1
2
3
4
| :Repeat V=0
:.code à exécuter
:End
:Disp "PERDU!" |
Maintenant, imaginez le code pour faire un compteur, jusqu'à ce que V=0, avec un départ de 5 vie.
Non, pas trouvé ?
Bon OK je vous le donne :
Secret (cliquez pour afficher)Code : Axe Parser - Sélectionner1
2
3
4
5
| :5→V
:Repeat V=0
:V-1→V
:End
:Disp "PERDU!" |
Et il n'y a pas, comme pour les conditions, un moyen plus simple d'exprimer V=0 (V est FAUX)?
Si, grâce à la boucle While

La boucle
While se traduit par : "
répéter tant que telle condition est vraie"
Syntaxe :
Code : Axe Parser - Sélectionner1
2
3
4
| :While condition
:.code à exécuter
:End
:.Toujours le End ! |
Contrairement au
Repeat, le code s'exécutera tant que la condition est vraie :
Code : Axe Parser - Sélectionner1
2
3
4
| :While V
:.code à exécuter
:End
:Disp "PERDU!" |
Et on reprend notre compteur de tout l'heure, mais en simplifié bien sur

:
Secret (cliquez pour afficher)Code : Axe Parser - Sélectionner1
2
3
4
5
6
| :5→V
:While V
:.Tant que V est plus grand que 0
:V-1→V
:End
:Disp "PERDU!" |
Bon, certes les boucles
Repeat et
While sont utiles, mais pour faire un compteur, rien de plus utile que la boucle
For(.
La syntaxe est la suivante :
Code : Axe Parser - Sélectionner1
2
3
4
| :For(Variable,ValeurInitiale,ValeurDeFinDeBoucle)
:.code à exécuter
:End
:.Et bien sur, le End. |
Une variable choisie va être initialisée à la valeur initiale, et la boucle vas être exécutée en incrémentant 1 à cette variable à chaque fois que le code est exécutée. Lorsque la boucle est terminée, la variable utilisée sera supprimée.
Dans un exemple concret ; je veux écrire le même texte mais en sautant une ligne à chaque fois, à l'aide de la commande
Output( :
Code : Axe Parser - Sélectionner1
2
3
| :For(A,0,7)
:Output(0,A,"Même texte
:End |
Maintenant avec la variable derrière, cela pourrait donner :
Code : Axe Parser - Sélectionner1
2
3
4
| :For(A,0,7)
:Output(0,A,"Choix")
:Output(6,A,A+1►Dec)
:End |
On aurait pu mettre le code suivant :Output(0,A,"Choix",A+1►Dec), cependant la variable vas être décalée de quelques colonnes par rapport au texte, et il est donc plus utile ici de détacher les commandes pour une meilleur mise en forme.
Ok, la boucle For( est pratique, mais à quoi servent les autres boucles alors ?
En faite la réponse se trouve dans le prochain chapitre, ou vous apprendrez à utiliser la commande
getKey.
Ce chapitre est très facile, mais entraînez vous et relisez le, il sera très utile pour la suite.