在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Java/ COBOL循環(huán)語句
COBOL循環(huán)語句
COBOL數(shù)據(jù)布局
COBOL基本語法
COBOL條件語句
COBOL程序結(jié)構(gòu)
COBOL環(huán)境安裝
COBOL數(shù)據(jù)類型
COBOL教程
COBOL字符串處理
COBOL基本動詞

COBOL循環(huán)語句

有一些任務需要執(zhí)行一遍又一遍,如讀取文件中的每個記錄,直到結(jié)束為止。以下是在COBOL中使用的循環(huán)語句:

  • 執(zhí)行直通
  • 執(zhí)行直到
  • 執(zhí)行時間
  • 進行時變

執(zhí)行直通

完成直通所使用的序列在給第一個和最后一段的名字來執(zhí)行一系列段落。執(zhí)行最后一段控件后會返回。

一行進行

里面的PERFORM語句將直到結(jié)束,PERFORM達成執(zhí)行。

語法

以下是語法在一行進行:

PERFORM 
DISPLAY 'HELLO WORLD'
END-PERFORM.

多行執(zhí)行

語句是在一個段中執(zhí)行,然后控制被轉(zhuǎn)移到其他段或部分。

語法

以下是多行執(zhí)行的語法:

PERFORM PARAGRAPH1 THRU PARAGRAPH2

例子

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以上COBOL程序執(zhí)行。

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

當編譯并執(zhí)行上面的程序它會產(chǎn)生以下結(jié)果:

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

執(zhí)行直到

在執(zhí)行之前,段將被執(zhí)行,直到給定的條件為真。與之前的測試是默認的狀態(tài),表示條件在一段語句執(zhí)行前檢查。

語法

以下是執(zhí)行直到的語法:

PERFORM A-PARA UNTIL COUNT=5

PERFORM A-PARA WITH TEST BEFORE UNTIL COUNT=5

PERFORM A-PARA WITH TEST AFTER UNTIL COUNT=5

例子

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以上COBOL程序執(zhí)行。

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

當編譯并執(zhí)行上面的程序它會產(chǎn)生以下結(jié)果:

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

執(zhí)行時期

在執(zhí)行時期,段將被執(zhí)行指定的次數(shù)。

語法

以下是執(zhí)行時間的語法:

PERFORM A-PARA 5 TIMES.

例子

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
A-PARA.
PERFORM B-PARA 3 TIMES.
STOP RUN.
B-PARA.
DISPLAY 'IN B-PARA'.

JCL以上COBOL程序執(zhí)行。

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

當編譯并執(zhí)行上面的程序它會產(chǎn)生以下結(jié)果:

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

執(zhí)行時變

在執(zhí)行不同的段會直到,直到短語變成真的條件來執(zhí)行。

語法

以下是進行改變的語法:

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

例子

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執(zhí)行以上COBOL程序。

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

當編譯并執(zhí)行上面的程序它會產(chǎn)生以下結(jié)果:

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

GO TO 語句

GO TO語句用于改變程序的執(zhí)行流程。在GO TO語句傳遞僅在前進方向去。它用于退出該段。不同類型的GO TO語句是:

無條件GO TO

GO TO para-name.

條件GO TO

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

如果“x”等于1,那么控制將被傳遞到第一段和如果'x'是等于2,則控制將被轉(zhuǎn)移到第二個段落等等。

例子

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以上COBOL程序執(zhí)行。

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

當編譯并執(zhí)行上面的程序它會產(chǎn)生以下結(jié)果:

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