       IDENTIFICATION DIVISION.
       PROGRAM-ID. READ3WGT1LINE.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL FIETS-FILE ASSIGN TO "fiets.dat"
                   ORGANIZATION IS SEQUENTIAL.
           SELECT OPTIONAL LOOP-FILE ASSIGN TO "loop.dat"
                   ORGANIZATION IS SEQUENTIAL.
           SELECT OPTIONAL ZWEM-FILE ASSIGN TO "zwem.dat"
                   ORGANIZATION IS SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.

       FD  FIETS-FILE.
       01  FIETS-REC.
           05 F-DATE       PIC X(8).
           05 F-DIST       PIC 9(5).
           05 F-TIMESEC    PIC 9(5).
           05 F-HR         PIC 9(3).
           05 F-WGT        PIC 9(3).

       FD  LOOP-FILE.
       01  LOOP-REC.
           05 L-DATE       PIC X(8).
           05 L-DIST       PIC 9(5).
           05 L-TIMESEC    PIC 9(5).
           05 L-HR         PIC 9(3).
           05 L-WGT        PIC 9(3).

       FD  ZWEM-FILE.
       01  ZWEM-REC.
           05 Z-DATE       PIC X(8).
           05 Z-DIST       PIC 9(5).
           05 Z-TIMESEC    PIC 9(5).
           05 Z-HR         PIC 9(3).
           05 Z-WGT        PIC 9(3).

       WORKING-STORAGE SECTION.
       01  EOF-FIETS       PIC X VALUE "N".
       01  EOF-LOOP        PIC X VALUE "N".
       01  EOF-ZWEM        PIC X VALUE "N".

       01  WS-MIN          PIC 9(3).
       01  WS-SEC          PIC 9(2).

       PROCEDURE DIVISION.
       MAIN-LOGIC.

           DISPLAY "----------------------------------------".
           DISPLAY "LEESPROGRAMMA 1-LIJN WEERGAVE".
           DISPLAY "----------------------------------------".

           OPEN INPUT FIETS-FILE
           OPEN INPUT LOOP-FILE
           OPEN INPUT ZWEM-FILE

           PERFORM READ-FIETS
           PERFORM READ-LOOP
           PERFORM READ-ZWEM

           PERFORM UNTIL EOF-FIETS = "Y"
              COMPUTE WS-MIN = F-TIMESEC / 60
              COMPUTE WS-SEC = F-TIMESEC - (WS-MIN * 60)

              DISPLAY "FIETS: " F-DATE " "
                      F-DIST " "
                      WS-MIN ":" WS-SEC " "
                      F-HR " "
                      F-WGT

              PERFORM READ-FIETS
           END-PERFORM

           PERFORM UNTIL EOF-LOOP = "Y"
              COMPUTE WS-MIN = L-TIMESEC / 60
              COMPUTE WS-SEC = L-TIMESEC - (WS-MIN * 60)

              DISPLAY "LOOP:  " L-DATE " "
                      L-DIST " "
                      WS-MIN ":" WS-SEC " "
                      L-HR " "
                      L-WGT

              PERFORM READ-LOOP
           END-PERFORM

           PERFORM UNTIL EOF-ZWEM = "Y"
              COMPUTE WS-MIN = Z-TIMESEC / 60
              COMPUTE WS-SEC = Z-TIMESEC - (WS-MIN * 60)

              DISPLAY "ZWEM:  " Z-DATE " "
                      Z-DIST " "
                      WS-MIN ":" WS-SEC " "
                      Z-HR " "
                      Z-WGT

              PERFORM READ-ZWEM
           END-PERFORM

           CLOSE FIETS-FILE
           CLOSE LOOP-FILE
           CLOSE ZWEM-FILE

           STOP RUN.

       READ-FIETS.
           READ FIETS-FILE
              AT END MOVE "Y" TO EOF-FIETS.
           EXIT.

       READ-LOOP.
           READ LOOP-FILE
              AT END MOVE "Y" TO EOF-LOOP.
           EXIT.

       READ-ZWEM.
           READ ZWEM-FILE
              AT END MOVE "Y" TO EOF-ZWEM.
           EXIT.

