COBOL -Schleifenanweisungen


Advertisements

Es gibt einige Aufgaben, die immer und immer wieder wie das Lesen jeder Datensatz einer Datei bis zum Ende durchgeführt werden müssen. Die Schleifenanweisungen verwendet in COBOL sind:

  • Ausführen Thru
  • Ausführen Bis
  • Ausführen Zeiten
  • Ausführen Unterschiedlich

Ausführen Thru

ausführen Thru wird verwendet, um eine Reihe von Absatz, indem sie den ersten und den letzten Absatz Namen in der Reihenfolge geben. Nach der Ausführung des letzten Absatzes Kontrolle zurückgekehrt wird zurück.

In-line Durchführen

Statements innerhalb der PERFORM wird sein ausgeführt, bis END-PERFORM erreichte wird.

Syntax

Es folgt die Syntax der In-line durchführen:

PERFORM 
   DISPLAY 'HELLO WORLD'
END-PERFORM.

Out-of-line Durchführen

Hier ist eine Aussage in einem Absatz ausgeführt, und dann wird die Steuerung übertragen zu anderen Absatz oder Abschnitt.

Syntax

Es folgt die Syntax der Out-of-line Durchführen:

PERFORM PARAGRAPH1 THRU PARAGRAPH2

Beispiel

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

PROCEDURE DIVISION.
   A-PARA.
   PERFORM DISPLAY 'IN A-PARA'
   END-PERFORM.
   PERFORM C-PARA THRU E-PARA.
   
   B-PARA.
   DISPLAY 'IN B-PARA'.
   STOP RUN.
   
   C-PARA.
   DISPLAY 'IN C-PARA'.
   
   D-PARA.
   DISPLAY 'IN D-PARA'.
   
   E-PARA.
   DISPLAY 'IN E-PARA'.

JCL oben COBOL-Programm zu ausführen.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

IN A-PARA
IN C-PARA
IN D-PARA
IN E-PARA
IN B-PARA

Ausführen Bis

In ausführen, bis "ein Absatz wird ausgeführt, bis die gegebene Bedingung wahr wird. Mit Test vor ist die Standard-Zustand und es zeigt an, dass die Bedingung überprüft vor der Ausführung von Aussagen in einem Absatz.

Syntax

Es folgt die Syntax durchführen, bis:

PERFORM A-PARA UNTIL COUNT=5

PERFORM A-PARA WITH TEST BEFORE UNTIL COUNT=5

PERFORM A-PARA WITH TEST AFTER UNTIL COUNT=5

Beispiel

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-CNT PIC 9(1) VALUE 0. 

PROCEDURE DIVISION.
   A-PARA.
   PERFORM B-PARA WITH TEST AFTER UNTIL WS-CNT>3.
   STOP RUN.
   
   B-PARA.
   DISPLAY 'WS-CNT : 'WS-CNT.
   ADD 1 TO WS-CNT.

JCL oben COBOL-Programm zu ausführen.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

WS-CNT : 0
WS-CNT : 1
WS-CNT : 2
WS-CNT : 3

Ausführen Zeiten

In ausführen Zeiten" ein Absatz wird sein ausgeführt , die Anzahl der Male spezifiziert.

Syntax

Im Folgenden ist die Syntax ausführen Zeiten:

PERFORM A-PARA 5 TIMES.

Beispiel

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

PROCEDURE DIVISION.
   A-PARA.
   PERFORM B-PARA 3 TIMES.
   STOP RUN.
   
   B-PARA.
   DISPLAY 'IN B-PARA'.

JCL oben COBOL-Programm zu ausführen:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

IN B-PARA
IN B-PARA
IN B-PARA

Ausführen Unterschiedlich

In ausführen unterschiedlichen, ein Absatz wird sein ausgeführt bis zu die Bedingung in Until phrase zukommen wahr.

Syntax

Im Folgenden ist die Syntax ausführen unterschiedlichen:

PERFORM A-PARA VARYING A FROM 1 BY 1 UNTIL A=5.

Beispiel

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-A PIC 9 VALUE 0.

PROCEDURE DIVISION.
   A-PARA.
   PERFORM B-PARA VARYING WS-A FROM 1 BY 1 UNTIL WS-A=5
   STOP RUN.
   
   B-PARA.
   DISPLAY 'IN B-PARA ' WS-A.

JCL oben COBOL-Programm zu ausführen:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

IN B-PARA 1
IN B-PARA 2
IN B-PARA 3
IN B-PARA 4

GO TO Erklärung

GO TO-Anweisung wird verwendet, um den Fluss der Ausführung eines Programms zu ändern. In GO TO-Anweisung Transfer geht nur in Vorwärtsrichtung. Es wird verwendet, um einen Absatz zu verlassen. Die verschiedenen Arten von GO TO-Anweisungen Verwendet , sind als folgt:

bedingungslose GO TO

GO TO para-name.

bedingt GO TO

GO TO para-1 para-2 para-3 DEPENDING ON x.

Wenn "x" gleich zu 1 ist, dann wird die Steuerung zu erster Absatz übertragen werden und wenn "x" gleich zu 2 ist, wird die Steuerung ist übertragen zu zweiter Absatz , und so weiter.

Beispiel

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.

DATA DIVISION.
   WORKING-STORAGE SECTION.
   01 WS-A PIC 9 VALUE 2.
   
PROCEDURE DIVISION.
   A-PARA.
   DISPLAY 'IN A-PARA'
   GO TO B-PARA.
   
   B-PARA.
   DISPLAY 'IN B-PARA '.
   GO TO C-PARA D-PARA DEPENDING ON WS-A.
   
   C-PARA.
   DISPLAY 'IN C-PARA '.
   
   D-PARA.
   DISPLAY 'IN D-PARA '.
   STOP RUN.

JCL oben COBOL-Programm zu ausführen:

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS=A,MSGCLASS=C
//STEP1 EXEC PGM=HELLO

Wenn Sie kompilieren und führen Sie das obige Programm, es produziert das folgende Ergebnis:

IN A-PARA
IN B-PARA 
IN D-PARA 
Advertisements