Conditions, IF, EVALUATE, PERFORM, and Control Flow Patterns
Write conditional and procedural logic in COBOL using clear flow-control constructs common in business applications.
Inside this chapter
- IF Statements
- EVALUATE
- PERFORM
- Loops and Repetition
- Real Example
Series navigation
Study the chapters in order for the clearest path from COBOL basics to enterprise batch processing, operational context, and modernization strategy. Use the navigation at the bottom to move smoothly through the full tutorial series.
IF Statements
IF ACCOUNT-BALANCE < 0
DISPLAY "OVERDRAWN"
END-IF.
Conditional logic is used in validation, eligibility rules, record routing, risk checks, and transaction handling.
EVALUATE
EVALUATE ACCOUNT-TYPE
WHEN "S"
DISPLAY "SAVINGS"
WHEN "C"
DISPLAY "CHECKING"
WHEN OTHER
DISPLAY "UNKNOWN"
END-EVALUATE.
EVALUATE is often easier to read than long chains of IF conditions when the logic is based on categories or discrete states.
PERFORM
PERFORM is used to invoke paragraphs or sections and is central to structuring COBOL programs into understandable processing steps.
Loops and Repetition
COBOL commonly uses PERFORM ... UNTIL for repetitive processing, especially when reading records from a file until the end is reached.
Real Example
A transaction-processing program may check whether an account is active, evaluate transaction type, perform the appropriate update logic, and then continue to the next record. This structured flow is normal in COBOL applications.