Leçons du module (2/2)
Boucles et Itérations
Les boucles et les constructions itératives en COBOL ne sont pas définies par des mots-clés comme for ou while, mais font plutôt appel à des variations syntaxiques de la même instruction PERFORM.
Boucles numériques fixes (PERFORM TIMES)
Si nous devons répéter l’exécution d’un paragraphe un nombre fixe de fois, nous pouvons ajouter le modificateur TIMES à la commande PERFORM.
PERFORM ELABORA-RIGA 10 TIMES.
Dans ce cas, le compilateur exécutera le paragraphe ELABORA-RIGA exactement 10 fois, puis reprendra l’exécution linéaire du code.
Boucles conditionnelles (PERFORM UNTIL)
Pour itérer jusqu’à ce qu’une certaine condition devienne vraie (l’équivalent d’une boucle while inversée), on utilise l’instruction PERFORM ... UNTIL.
PERFORM INCR-CONTATORE UNTIL WS-COUNTER > 5.
PROCEDURE DIVISION.
MAIN-PROCEDURE.
PERFORM PROCESS-ITEM UNTIL WS-COUNTER > 3.
STOP RUN.
PROCESS-ITEM.
DISPLAY "Counter: " WS-COUNTER.
ADD 1 TO WS-COUNTER.
À vous de jouer
Écrivez une instruction au sein de MAIN-PROCEDURE pour exécuter le paragraphe PROCESS-ITEM exactement 10 fois.
Afficher l'indice
Utilisez la syntaxe : PERFORM PROCESS-ITEM 10 TIMES.
Solution disponible après 3 tentatives
Exécutez de manière répétée le paragraphe PROCESS-STEP jusqu’à ce que la variable WS-COUNTER devienne supérieure à 5.
Afficher l'indice
Utilisez la syntaxe : PERFORM PROCESS-STEP UNTIL WS-COUNTER > 5.
Solution disponible après 3 tentatives