Cette boucle inclut en elle-même un compteur, ce qui est très utile lorsque vous voulez faire marcher les fonctions à l'intérieur de la boucle un certain nombre de fois. Et puis elle est simple à utiliser. Mais bon, si vous m'écoutez, tout est très simple ; c'est vrai qu'une fois compris, c'est toujours simple...
For, To, Next
Cette fonction demande une petite chose : une variable et c'est tout.
Comme d'habitude, la syntaxe :
For <la valeur de départ que vous donnez à la variable> To <la valeur d'arrivée de la variable>
<les actions à exécuter>
Next
Le chemin d'accès des fonctions "For", "To" et "Next" est : [Shift], [VARS] (Prgm), [F1] (COM), [F6].
Toutes les fonctions sont là : For , To, Step (une fonction que nous verrons à la fin de cette partie) et Next.
Je reconnais que comme ça, ça ne paraît pas évident mais un petit exemple vous aidera à mieux comprendre : imaginez que vous ayez copié sur votre voisin et que vous ayez eu comme punition à copier 10 fois "Je ne dois pas tricher". Eh bien à la calculatrice, ce serait un jeu d'enfant :
Code : Autre1
2
3
4
5
| For 1->A To 10
"Je ne dois pas tricher"
Next |
Alors, les explications :
- la variable A prend comme valeur de départ 1 (For 1->A) et devra s'arrêter lorsqu'elle aura atteint la valeur 10 (To 10).
- la phrase s'affiche à l'écran.
- la variable A se voit augmenter sa valeur de 1 (Next).
La boucle s'exécutera alors jusqu'à ce que la variable A ait atteint la valeur 10 ; c'est-à-dire lorsqu'elle aura écrit 10 fois la phrase.
Voilà déjà un premier avantage à être programmeur... Non ? Les punitions faites en 3 minutes, c'est pas beau ça ?
Est-on obligé d'augmenter (avec la fonction Next) la valeur de 1 ? Est-ce qu'on pourrait l'augmenter de 2 par exemple ?
Ben on ne peut pas dire que vous n'êtes pas curieux. Mais de toute manière, cette question tombe à pic : c'est exactement ce que je veux vous montrer après. Il est donc possible de choisir le pas (et oui, c'est comme ça que ça s'appelle) pour augmenter la valeur différemment.
For, To, Step, Next
C'est exactement la même syntaxe, sauf que sur la ligne où l'on déclare la valeur de départ et celle d'arrivée, on rajoute le pas :
For<valeur de départ> To <valeur d'arrivée> Step <pas>
Je n'ai pas vraiment d'idée pour trouver un bon exemple; on va donc en faire un débile. Créons un programme qui compte de 2 en 2 en partant de 10 et en allant à 30 :
Pour ce faire, je vais utiliser une nouvelle fonction stoppant le programme à chaque fois que l'opération aura été faite. Ceci car sinon, la calculatrice affichera les fonctions quasiment instantanément et vous n'aurez pas le temps de les voir; ce sera même tellement rapide qu'elle-même n'aura pas le temps de les afficher. Cette fonction est un petit triangle noir et est appelée Display; son chemin d'accès est : [Shift], [VARS] (Prgm), [F5]. Comme ce petit triangle noir n'existe pas sur mon clavier, j'utiliserai ce symbole pour le signaler : "¤". Cette fonction mettra en pause le programme et tant que vous n'appuierez pas sur [EXE], il restera en pause. Retenez cette fonction, car c'est aussi une des plus utilisées.
Note : une fois cette fonction mise, votre curseur ira directement à la ligne : c'est normal. Je vous avais parlé d'instructions qui permettaient de séparer les différentes instructions (le retour à la ligne et les deux points). Voici donc la dernière...
Code : Autre1
2
3
4
5
| For 10->A To 30 Step 2
A¤
Next |
Pas besoin de vous expliquer ce programme, vous l'avez compris ?
Vous devez vous dire (vu les exemples que j'ai choisis) que cette fonction ne sert jamais, or, vous vous trompez; lorsque vous ferez des jeux, elle vous sera plus qu'utile.
Nous allions oublier notre petit cours d'anglais ?

Eh bien "For 10->A" (pour notre premier exemple) "pour un donne A", "To 30" "à 30", "Step 2" "avec un pas de 2" et "Next" "continue". C'est sûr, c'est moins évident (un peu plus tiré par les cheveux), mais ça se tient quand même.