tinycobol/test.code/t05/test05c.cob

90 lines
1.8 KiB
COBOL

IDENTIFICATION DIVISION.
PROGRAM-ID. TEST05c.
* Program to test PERFORM UNTIL with TEST option.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
* SPECIAL-NAMES.
* DECIMAL-POINT IS COMMA.
* INPUT-OUTPUT SECTION.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
01 IDX PIC 9(05).
PROCEDURE DIVISION.
DISPLAY "BEGIN: PERFORM UNTIL - TEST BEFORE".
PERFORM A-100.
DISPLAY "END : PERFORM UNTIL - TEST BEFORE".
DISPLAY "BEGIN: PERFORM UNTIL - TEST AFTER".
PERFORM A-150.
DISPLAY "END : PERFORM UNTIL - TEST AFTER".
DISPLAY "BEGIN: PERFORM(In-line) UNTIL TEST BEFORE".
PERFORM A-300.
DISPLAY "END : PERFORM(In-line) UNTIL TEST BEFORE".
DISPLAY "BEGIN: PERFORM(In-line) UNTIL TEST AFTER".
PERFORM A-400.
DISPLAY "END : PERFORM(In-line) UNTIL TEST AFTER".
STOP RUN.
A-100.
DISPLAY "ENTER A-100".
MOVE 0 TO IDX.
PERFORM A-200
WITH TEST BEFORE
UNTIL IDX > 2.
* UNTIL IDX EQUAL 1.
DISPLAY "EXIT A-100".
A-150.
DISPLAY "ENTER A-150".
MOVE 0 TO IDX.
PERFORM A-200
WITH TEST AFTER
UNTIL IDX > 2.
* UNTIL IDX EQUAL 1.
DISPLAY "EXIT A-150".
A-200.
DISPLAY "ENTER A-200".
ADD 1 TO IDX.
DISPLAY "A-200 - IDX =" IDX.
* ADD 1 TO IDX.
DISPLAY "EXIT A-200".
A-300.
DISPLAY "ENTER A-300".
MOVE 1 TO IDX.
PERFORM
WITH TEST BEFORE
UNTIL IDX > 2
* UNTIL IDX > 1.
* ADD 1 TO IDX
DISPLAY "A-300 - IDX =" IDX
ADD 1 TO IDX
END-PERFORM.
DISPLAY "EXIT A-300".
A-400.
DISPLAY "ENTER A-400".
MOVE 0 TO IDX.
PERFORM
WITH TEST AFTER
UNTIL IDX > 2
* UNTIL IDX > 0.
ADD 1 TO IDX
DISPLAY "A-400 - IDX =" IDX
* ADD 1 TO IDX
END-PERFORM.
DISPLAY "EXIT A-400".