Direkt zum Hauptinhalt springen
eLearner.app
Modul 3 · Lektion 2 von 26/10 im Kurs~15 min
Lektionen des Moduls (2/2)

Schleifen und Iterationen

Schleifen und iterative Konstrukte in COBOL werden nicht durch Schlüsselwörter wie for oder while definiert, sondern verwenden syntaktische Variationen derselben Anweisung PERFORM.

Feste numerische Schleifen (PERFORM TIMES)

Wenn wir die Ausführung eines Absatzes eine feste Anzahl von Malen wiederholen müssen, können wir der Anweisung PERFORM den Modifikator TIMES hinzufügen.

Code
PERFORM ELABORA-RIGA 10 TIMES.

In diesem Fall führt der Compiler den Absatz ELABORA-RIGA genau 10 Mal aus und setzt dann die lineare Ausführung des Codes fort.

Bedingte Schleifen (PERFORM UNTIL)

Um zu iterieren, bis eine bestimmte Bedingung wahr wird (entspricht einer umgekehrten while-Schleife), verwenden wir die Anweisung 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.

Probier es selbst aus

Übung#cobol.m3.l2.e1
Versuche: 0Wird geladen…

Schreiben Sie eine Anweisung in der MAIN-PROCEDURE, um den Absatz PROCESS-ITEM genau 10 Mal auszuführen.

Editor wird geladen…
Hinweis anzeigen

Verwenden Sie die Syntax: PERFORM PROCESS-ITEM 10 TIMES.

Lösung nach 3 Versuchen verfügbar

Übung#cobol.m3.l2.e2
Versuche: 0Wird geladen…

Führen Sie den Absatz PROCESS-STEP wiederholt aus, bis die Variable WS-COUNTER größer als 5 wird.

Editor wird geladen…
Hinweis anzeigen

Verwenden Sie die Syntax: PERFORM PROCESS-STEP UNTIL WS-COUNTER > 5.

Lösung nach 3 Versuchen verfügbar