Passer au contenu principal
eLearner.app
Module 3 · Leçon 2 sur 26/10 dans le cours~15 min
Leçons du module (2/2)

Cicli e Iterazioni

I cicli ed i costrutti iterativi in COBOL non sono definiti da parole chiave come for o while, ma fanno uso di variazioni sintattiche della stessa istruzione PERFORM.

Cicli Numerici Fissi (PERFORM TIMES)

Se dobbiamo ripetere l'esecuzione di un paragrafo per un numero fisso di volte, possiamo aggiungere il modificatore TIMES al comando PERFORM.

Code
PERFORM ELABORA-RIGA 10 TIMES.

In questo caso, il compilatore eseguirà il paragrafo ELABORA-RIGA esattamente 10 volte, riprendendo poi l'esecuzione lineare del codice.

Cicli Condizionali (PERFORM UNTIL)

Per iterare fino a quando una determinata condizione non diviene vera (equivalente a un ciclo while invertito), usiamo l'istruzione PERFORM ... UNTIL.

Code
PERFORM INCR-CONTATORE UNTIL WS-COUNTER > 5.
Code
PROCEDURE DIVISION.
MAIN-PROCEDURE.
    PERFORM PROCESS-ITEM UNTIL WS-COUNTER > 3.
    STOP RUN.

PROCESS-ITEM.
    DISPLAY "Counter: " WS-COUNTER.
    ADD 1 TO WS-COUNTER.

Prova tu

Exercice#cobol.m3.l2.e1
Tentatives : 0Chargement…

Scrivi un'istruzione all'interno di MAIN-PROCEDURE per eseguire il paragrafo PROCESS-ITEM esattamente per 10 volte.

Chargement de l'éditeur…
Afficher l'indice

Usa la sintassi: PERFORM PROCESS-ITEM 10 TIMES.

Solution disponible après 3 tentatives

Exercice#cobol.m3.l2.e2
Tentatives : 0Chargement…

Esegui ripetutamente il paragrafo PROCESS-STEP fino a quando la variabile WS-COUNTER diventa maggiore di 5.

Chargement de l'éditeur…
Afficher l'indice

Usa la sintassi: PERFORM PROCESS-STEP UNTIL WS-COUNTER > 5.

Solution disponible après 3 tentatives