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