Hello World, Version 5
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO5.
AUTHOR. BILL ROGERS.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE
ASSIGN TO 'A:\NAMES.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE
ASSIGN TO 'A:\HELLO5.TXT'
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD IN-FILE
DATA RECORD IS IN-RECORD.
01 IN-RECORD.
05 IN-NAME PIC X(25).
FD OUT-FILE
DATA RECORD IS OUT-RECORD.
01 OUT-RECORD PIC X(40).
WORKING-STORAGE SECTION.
01 WS-LINE.
02 FILLER PIC X(9) VALUE SPACES.
02 FILLER PIC X(6) VALUE 'Hello '.
02 WS-NAME PIC X(25).
01 END-OF-FILE-FLAG PIC X.
PROCEDURE DIVISION.
MAINLINE.
PERFORM INITIALIZATION-ROUTINE.
PERFORM THE-LOOP
UNTIL END-OF-FILE-FLAG = 'Y'.
PERFORM EOJ-ROUTINE.
STOP RUN.
INITIALIZATION-ROUTINE.
OPEN INPUT IN-FILE.
OPEN OUTPUT OUT-FILE.
READ IN-FILE
AT END MOVE 'Y' TO END-OF-FILE-FLAG.
THE-LOOP.
MOVE IN-NAME TO WS-NAME.
MOVE WS-LINE TO OUT-RECORD.
WRITE OUT-RECORD.
READ IN-FILE
AT END MOVE 'Y' TO END-OF-FILE-FLAG.
EOJ-ROUTINE.
CLOSE IN-FILE.
CLOSE OUT-FILE.
Cobol Home