Guest User

Untitled

a guest
Jan 25th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
COBOL 2.28 KB | None | 0 0
  1.        IDENTIFICATION DIVISION.
  2.        PROGRAM-ID. Lab1.
  3.        AUTHOR. DYLAN
  4.  
  5.        ENVIRONMENT DIVISION.
  6.        INPUT-OUTPUT SECTION.
  7.        FILE-CONTROL.
  8.  
  9.          SELECT PRINT-FILE ASSIGN TO 'LAB1.OUTPUT'
  10.            ORGANIZATION IS LINE SEQUENTIAL.
  11.  
  12.          SELECT STUDENT-FILE ASSIGN TO 'lab1.dat'
  13.            ORGANIZATION IS LINE SEQUENTIAL.
  14.  
  15.  
  16.        DATA DIVISION.
  17.        FILE SECTION.
  18.  
  19.        FD STUDENT-FILE
  20.           RECORD CONTAINS 80 CHARACTERS
  21.           RECORDING MODE IS F
  22.           DATA RECORD IS STUDENT-REC.
  23.  
  24.        01 STUDENT-REC.
  25.           05 STUDENT-NUMBER         PIC X(9).
  26.           05 STUDENT-NAME           PIC X(20).
  27.           05 STUDENT-ENROLL-YEAR    PIC 9(4).
  28.  
  29.        FD PRINT-FILE
  30.           RECORD CONTAINS 132 CHARACTERS
  31.           RECORDING MODE IS F
  32.           DATA RECORD IS PRINT-LINE.
  33.  
  34.        01 PRINT-LINE.
  35.           05 FILLER                 PIC X(10).
  36.           05 PRINT-NAME             PIC X(20).
  37.           05 FILLER                 PIC X(10).
  38.           05 PRINT-NUMBER           PIC X(9).
  39.           05 FILLER                 PIC X(10).
  40.           05 PRINT-ENROLL-YEAR      PIC X(4).
  41.           05 FILLER                 PIC X(10).
  42.           05 PRINT-YEARS-ENROLLED   PIC Z9.
  43.  
  44.        WORKING-STORAGE SECTION.
  45.  
  46.        01 END-SWITCH           PIC XXX VALUE 'NO'.
  47.  
  48.        01 HEADING1.
  49.           05 FILLER            PIC X(36) VALUE SPACES.
  50.           05 FILLER            PIC X(11) VALUE
  51.                                'DYLAN FLINT'.
  52.        PROCEDURE DIVISION.
  53.  
  54.         OPEN INPUT  STUDENT-FILE.
  55.         OPEN OUTPUT PRINT-FILE.
  56.  
  57.         READ STUDENT-FILE AT END MOVE 'YES' TO END-SWITCH.
  58.  
  59.         WRITE PRINT-LINE FROM HEADING1 AFTER ADVANCING 2 LINES.
  60.  
  61.         PERFORM MAIN-LOOP UNTIL END-SWITCH = 'YES'.
  62.  
  63.         CLOSE PRINT-FILE.
  64.         CLOSE STUDENT-FILE.
  65.  
  66.         STOP RUN.
  67.  
  68.        MAIN-LOOP.
  69.              MOVE SPACES TO PRINT-LINE.
  70.  
  71.              MOVE STUDENT-NUMBER TO PRINT-NUMBER.
  72.              MOVE STUDENT-NAME TO PRINT-NAME.
  73.              MOVE STUDENT-ENROLL-YEAR TO PRINT-ENROLL-YEAR.
  74.  
  75.              SUBTRACT STUDENT-ENROLL-YEAR FROM 2011
  76.                       GIVING PRINT-YEARS-ENROLLED.
  77.  
  78.              WRITE PRINT-LINE AFTER ADVANCING 2 LINES.
  79.  
  80.              READ STUDENT-FILE AT END MOVE 'YES' TO END-SWITCH.
Add Comment
Please, Sign In to add comment