Vai al contenuto
eLearner.app
Modulo 3 · Lezione 2 di 26/10 nel corso~15 min
Lezioni del modulo (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

Esercizio#cobol.m3.l2.e1
Tentativi: 0Caricamento…

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

Caricamento editor…
Mostra suggerimento

Usa la sintassi: PERFORM PROCESS-ITEM 10 TIMES.

Soluzione disponibile dopo 3 tentativi

Esercizio#cobol.m3.l2.e2
Tentativi: 0Caricamento…

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

Caricamento editor…
Mostra suggerimento

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

Soluzione disponibile dopo 3 tentativi