Master Mainframe Technologies - COBOL, JCL, DB2, VSAM, CICS & More
ABEND Codes SQLCODEs File Status Interview Prep Contact
← Back to Loops & PERFORM
Loops & PERFORM | Intermediate | COBOL

PERFORM THRU

Problem Description

Execute a range of paragraphs using PERFORM THRU.

Expected Output

Sequential paragraph execution

Hints

PERFORM para1 THRU para2 executes all paragraphs in range.

Solution

IDENTIFICATION DIVISION. PROGRAM-ID. THRU. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-NUM PIC 9(5). 01 WS-VALID PIC 9 VALUE 0. PROCEDURE DIVISION. DISPLAY "ENTER A NUMBER: ". ACCEPT WS-NUM. * Execute all paragraphs from STEP1 through STEP3 PERFORM STEP1 THRU STEP3. DISPLAY "ALL STEPS COMPLETED". STOP RUN. STEP1. DISPLAY "STEP 1: VALIDATING INPUT". IF WS-NUM > 0 MOVE 1 TO WS-VALID DISPLAY " INPUT IS POSITIVE" ELSE DISPLAY " INPUT IS ZERO OR NEGATIVE" END-IF. STEP2. DISPLAY "STEP 2: PROCESSING". IF WS-VALID = 1 COMPUTE WS-NUM = WS-NUM * 2 DISPLAY " DOUBLED VALUE: " WS-NUM ELSE DISPLAY " SKIPPING - INVALID INPUT" END-IF. STEP3. DISPLAY "STEP 3: FINALIZING". DISPLAY " FINAL VALUE: " WS-NUM.

Explanation:

PERFORM THRU executes all paragraphs in sequence from first to last.