Przejdź do głównej treści
eLearner.app
Moduł 3 · Lekcja 2 z 26/10 w kursie~15 min
Lekcje modułu (2/2)

Pętle i Iteracje

Pętli i konstrukcji iteracyjnych w COBOL-u nie definiuje się za pomocą słów kluczowych takich jak for czy while, lecz za pomocą modyfikacji składniowych tej samej instrukcji PERFORM.

Pętle liczbowe (PERFORM TIMES)

Jeśli musimy powtórzyć wykonanie paragrafu określoną liczbę razy, możemy dodać modyfikator TIMES do polecenia PERFORM.

Code
PERFORM ELABORA-RIGA 10 TIMES.

W tym przypadku kompilator wykona paragraf ELABORA-RIGA dokładnie 10 razy, a następnie powróci do liniowego wykonywania kodu.

Pętle warunkowe (PERFORM UNTIL)

Aby iterować do momentu, gdy określony warunek stanie się prawdziwy (odpowiednik odwróconej pętli while), używamy instrukcji 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.

Spróbuj sam

Ćwiczenie#cobol.m3.l2.e1
Próby: 0Ładowanie...

Napisz instrukcję wewnątrz MAIN-PROCEDURE, aby wykonać paragraf PROCESS-ITEM dokładnie 10 razy.

Ładowanie edytora...
Pokaż wskazówkę

Użyj składni: PERFORM PROCESS-ITEM 10 TIMES.

Rozwiązanie dostępne po 3 próbach

Ćwiczenie#cobol.m3.l2.e2
Próby: 0Ładowanie...

Wykonuj wielokrotnie paragraf PROCESS-STEP do momentu, gdy zmienna WS-COUNTER będzie większa niż 5.

Ładowanie edytora...
Pokaż wskazówkę

Użyj składni: PERFORM PROCESS-STEP UNTIL WS-COUNTER > 5.

Rozwiązanie dostępne po 3 próbach