IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. AUTHOR SCOTT. DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-DETAILS. 05 EAGLE-ID PIC X(8). 05 NAME. 10 FIRST-NAME PIC X(20) VALUE 'ARMANDO'. 10 LAST-NAME PIC X(20) VALUE 'CASAS'. 05 ADRESS PIC X(40) VALUE 'DIRECCION LARGA #234 COL. AQUI SI MATAN'. 05 HASHTAG PIC X(1) VALUE '#'. 05 PHONE PIC 9(6) VALUE 123456. 01 NEW-PHONE PIC 9(6). 77 COUNTER PIC 9(02). 01 STAR PIC X(1) VALUE '*'. PROCEDURE DIVISION. MOVE PHONE TO NEW-PHONE. DISPLAY EMPLOYEE-DETAILS. DISPLAY NEW-PHONE. IF HASHTAG NOT = STAR THEN PERFORM 100-HASHTAGS UNTIL COUNTER >3 ELSE PERFORM 200-STARS UNTIL COUNTER >4 DISPLAY'.......' END-IF. STOP RUN. 100-HASHTAGS SECTION. DISPLAY HASHTAG ADD 1 TO COUNTER. 200-STARS SECTION. DISPLAY STAR ADD 1 TO COUNTER.
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-DETAILS. 05 EAGLE-ID PIC X(8). 05 NAME. 10 FIRST-NAME PIC X(20) VALUE 'ARMANDO'. 10 LAST-NAME PIC X(20) VALUE 'CASAS'. 05 ADRESS PIC X(40) VALUE 'DIRECCION LARGA #234 COL. AQUI SI MATAN'. 05 HASHTAG PIC X(1) VALUE '#'. 05 PHONE PIC 999999 VALUE 123456. 01 NEW-PHONE PIC 999999. 01 COUNTER PIC 9(02). PROCEDURE DIVISION. MOVE PHONE TO NEW-PHONE. DISPLAY EMPLOYEE-DETAILS. DISPLAY NEW-PHONE. 100-HASHTAGS SECTION. DISPLAY HASHTAG ADD 1 TO COUNTER. PERFORM 100-HASHTAGS UNTIL COUNTER >10. STOP RUN.
IDENTIFICATION DIVISION. PROGRAM-ID.AJ. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. PROCEDURE DIVISION. PERFORM A-PARA. STOP RUN. A-PARA. DISPLAY'MY ID IS'. DISPLAY'MY AJ IS'.
IDENTIFICATION DIVISION. AUTHOR. JACOB STEINER. DATE-WRITTEN. 12/25/2019. PROGRAM-ID. HW06JS. DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-RECORD-IN. 05 EMP-PAY-DATE-IN. 10 EMP-PAY-YY PIC X(02). 10 EMP-PAY-MM PIC 9(02). 10 EMP-PAY-DD PIC X(02). 05 EMP-NUMBER PIC X(03). 05 EMP-NAME. 10 EMP-LAST-NAME PIC X(15). 10 EMP-FIRST-NAME PIC X(10). 05 HOURS-WORKED PIC 99V99. 05 PAY-RATE PIC 99V99. 05 EMP-PAY-TYPE PIC X. 88 HOURLY-PAY VALUE 'H'. 88 SALARY-PAY VALUE 'S'. 05 EMP-POSITION PIC X. 88 PROGRAMMER VALUE 'P'. 88 ACCOUNTANT VALUE 'A'. 88 MANAGER VALUE 'M'. 88 INTERN VALUE 'I'. 88 TESTER VALUE 'T'. 05 EMP-GROSS-OUT PIC 9(04)V99. 05 EMP-OVERTIME-HOURS-OUT PIC 9(02). 05 EMP-OVERTIME-OUT PIC 9(04)V99. 05 EMP-TAXES-OUT PIC 9(04)V99. 05 EMP-NET-OUT PIC 9(04)V99. 05 FILLER PIC X(10). 01 EMP-TAX-RATE PIC V99. 01 EMP-POSITION-TITLE PIC X(18). 01 EMPLOYEE-PAY-TOTALS. 05 EMP-GROSS-PAY PIC 9(04)V99. 05 EMP-NET-PAY PIC 9(04)V99. 05 EMP-TAXES PIC 9(04)V99. 05 EMP-OVERTIME-HOURS PIC 9(02)V99. 05 EMP-OVERTIME-PAY PIC 9(03)V99. 01 PROGRAM-TOTALS. 05 PROGRAM-GROSS-PAY PIC 9(04)V99. 05 PROGRAM-NET-PAY PIC 9(04)V99. 05 PROGRAM-TAXES PIC 9(04)V99. 05 PROGRAM-RECORD-COUNT PIC 9(02). 05 PROGRAM-HOURS-WORKED PIC 9(04)V99. 05 PROGRAM-AVERAGE-GROSS PIC 9(04)V99. 05 PROGRAM-AVERAGE-NET PIC 9(04)V99. 05 PROGRAM-OVERTIME-HOURS PIC 9(04)V99. 05 PROGRAM-OVERTIME-PAY PIC 9(04)V99. 01 WS-DATE-IN. 05 WS-DATE-IN-YYYY PIC 9(04). 05 WS-DATE-IN-MM PIC 9(02). 05 WS-DATE-IN-DD PIC 9(02). 01 WS-POSITIONS. 05 WS-PROGRAMMER. 10 WS-PROGRAMMER-CODE PIC X(01) VALUE 'P'. 10 WS-PROGRAMMER-TITLE PIC X(18) VALUE 'PROGRAMMER'. 10 WS-PROGRAMMER-RATE PIC 9(02)V99 VALUE 65.00. 05 WS-ACCOUNTANT. 10 WS-ACCOUNTANT-CODE PIC X(01) VALUE 'A'. 10 WS-ACCOUNTANT-TITLE PIC X(18) VALUE 'ACCOUNTANT'. 10 WS-ACCOUNTANT-RATE PIC 9(02)V99 VALUE 58.00. 05 WS-MANAGER. 10 WS-MANAGER-CODE PIC X(01) VALUE 'M'. 10 WS-MANAGER-TITLE PIC X(18) VALUE 'MANAGER'. 10 WS-MANAGER-RATE PIC 9(02)V99 VALUE 62.00. 05 WS-INTERN. 10 WS-INTERN-CODE PIC X(01) VALUE 'I'. 10 WS-INTERN-TITLE PIC X(18) VALUE 'INTERN'. 10 WS-INTERN-RATE PIC 9(02)V99 VALUE 22.00. 05 WS-TESTER. 10 WS-TESTER-CODE PIC X(01) VALUE 'T'. 10 WS-TESTER-TITLE PIC X(18) VALUE 'TESTER'. 10 WS-TESTER-RATE PIC 9(02)V99 VALUE 22.00. PROCEDURE DIVISION. 0000-DRIVER. PERFORM 0100-INITIALIZE-PROGRAM. PERFORM 1000-PROCESS-PAYROLL-RECORDS until EMP-PAY-MM not numeric or PROGRAM-RECORD-COUNT > 999 PERFORM 2000-PROVIDE-FINAL-TOTALS. PERFORM 3000-CLOSE-PROGRAM. STOP RUN. 0100-INITIALIZE-PROGRAM. DISPLAY 'PAYROLL HW05JS FOR JACOB STEINER'. ACCEPT WS-DATE-IN FROM DATE YYYYMMDD DISPLAY 'PROGRAM BEGINS: ' WS-DATE-IN-MM '/' WS-DATE-IN-DD '/' WS-DATE-IN-YYYY DISPLAY WS-POSITIONS MOVE .32 TO EMP-TAX-RATE ACCEPT EMPLOYEE-RECORD-IN DISPLAY '--'. 1000-PROCESS-PAYROLL-RECORDS. add 1 to PROGRAM-RECORD-COUNT PERFORM 1100-DETERMINE-POSITION-AND-PAY PERFORM 1200-CALCULATE-PAYROLL PERFORM 1300-UPDATE-PROGRAM-TOTALS PERFORM 1400-DISPLAY-PAYROLL-RECORD-INFO PERFORM 1900-ACCEPT-RECORD. 1100-DETERMINE-POSITION-AND-PAY. EVALUATE EMP-POSITION WHEN 'P' move WS-PROGRAMMER-TITLE TO EMP-POSITION-TITLE move WS-PROGRAMMER-RATE TO PAY-RATE WHEN 'A' move WS-ACCOUNTANT-TITLE TO EMP-POSITION-TITLE move WS-ACCOUNTANT-RATE TO PAY-RATE WHEN 'M' move WS-MANAGER-TITLE TO EMP-POSITION-TITLE move WS-MANAGER-RATE TO PAY-RATE WHEN 'I' move WS-INTERN-TITLE TO EMP-POSITION-TITLE move WS-INTERN-RATE TO PAY-RATE WHEN 'T' move WS-TESTER-TITLE TO EMP-POSITION-TITLE move WS-TESTER-RATE TO PAY-RATE WHEN OTHER MOVE 'UNDEFINED' TO EMP-POSITION-TITLE END-EVALUATE. 1200-CALCULATE-PAYROLL. IF EMP-PAY-TYPE = 'H' AND HOURS-WORKED > 40.00 compute EMP-OVERTIME-HOURS = HOURS-WORKED - 40 compute EMP-OVERTIME-PAY = EMP-OVERTIME-HOURS * 1.5 * PAY-RATE compute EMP-GROSS-PAY = 40 * PAY-RATE + EMP-OVERTIME-PAY ELSE IF EMP-PAY-TYPE = 'S' COMPUTE EMP-GROSS-PAY = 40 * PAY-RATE ELSE COMPUTE EMP-GROSS-PAY = HOURS-WORKED * PAY-RATE END-IF. compute EMP-TAXES = EMP-GROSS-PAY * EMP-TAX-RATE. compute EMP-NET-PAY = EMP-GROSS-PAY - EMP-TAXES. 1300-UPDATE-PROGRAM-TOTALS. add EMP-NET-PAY to PROGRAM-NET-PAY. add EMP-TAXES to PROGRAM-TAXES. add EMP-GROSS-PAY to PROGRAM-GROSS-PAY. add HOURS-WORKED to PROGRAM-HOURS-WORKED. add EMP-OVERTIME-HOURS to PROGRAM-OVERTIME-HOURS. add EMP-OVERTIME-PAY to PROGRAM-OVERTIME-PAY. 1400-DISPLAY-PAYROLL-RECORD-INFO. DISPLAY 'RECORD #' PROGRAM-RECORD-COUNT': 'EMPLOYEE-RECORD-IN DISPLAY 'PAY DATE : ' EMP-PAY-MM '/' EMP-PAY-DD '/' EMP-PAY-YY DISPLAY 'EMPLOYEE NAME: ' EMP-NAME DISPLAY ' NUMBER : ' EMP-NUMBER DISPLAY ' HOURS : ' HOURS-WORKED DISPLAY ' PAY RATE : ' PAY-RATE DISPLAY ' POSITION : ' EMP-POSITION DISPLAY ' TITLE : ' EMP-POSITION-TITLE DISPLAY ' PAY TYPE : ' EMP-PAY-TYPE DISPLAY ' GROSS PAY: ' EMP-GROSS-PAY DISPLAY ' OT PAY : ' EMP-OVERTIME-PAY DISPLAY ' OT HOURS : ' EMP-OVERTIME-HOURS DISPLAY ' TAXES : ' EMP-TAXES DISPLAY ' NET PAY : ' EMP-NET-PAY DISPLAY '--'. 1900-ACCEPT-RECORD. ACCEPT EMPLOYEE-RECORD-IN. 2000-PROVIDE-FINAL-TOTALS. compute PROGRAM-AVERAGE-GROSS = PROGRAM-GROSS-PAY / 2. compute PROGRAM-AVERAGE-NET = PROGRAM-NET-PAY / 2. DISPLAY 'FILE TOTALS:'. DISPLAY ' RECORDS : ' PROGRAM-RECORD-COUNT. DISPLAY ' HOURS : ' PROGRAM-HOURS-WORKED. DISPLAY ' GROSS : ' PROGRAM-GROSS-PAY. DISPLAY ' TAXES : ' PROGRAM-TAXES. DISPLAY ' NET : ' PROGRAM-NET-PAY. DISPLAY ' OT HOURS : ' PROGRAM-OVERTIME-HOURS. DISPLAY ' OT PAY : ' PROGRAM-OVERTIME-PAY. DISPLAY 'AVERAGE GROSS: ' PROGRAM-AVERAGE-GROSS. DISPLAY ' AVERAGE NET: ' PROGRAM-AVERAGE-NET. DISPLAY '--'. 3000-CLOSE-PROGRAM. DISPLAY 'END OF PROGRAM FOR JACOB STEINER'.
IDENTIFICATION DIVISION. PROGRAM-ID. HW06YM. AUTHOR. YIMENG MA DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-RECORD-IN. 05 EMP-PAY-DATE-IN. 10 EMP-PAY-YY PIC X(02). 10 EMP-PAY-MM PIC X(02). 10 EMP-PAY-DD PIC X(02). 05 EMP-NUMBER PIC X(03). 05 EMP-NAME. 10 EMP-LAST-NAME PIC X(15). 10 EMP-FIRST-NAME PIC X(10). 05 HOURS-WORKED PIC 99V99. 05 PAY-RATE PIC 99V99. 05 EMP-PAY-TYPE PIC X. 88 HOURLY-PAY VALUE 'H'. 88 SALARY-PAY VALUE 'S'. 05 EMP-POSITION PIC X. 88 PROGRAMMER VALUE 'P'. 88 ACCOUNTANT VALUE 'A'. 88 MANAGER VALUE 'M'. 88 INTERN VALUE 'I'. 88 TESTER VALUE 'T'. 05 EMP-GROSS-OUT PIC 9(04)V99. 05 EMP-OVERTIME-HOURS-OUT PIC 9(02). 05 EMP-OVERTIME-OUT PIC 9(04)V99. 05 EMP-TAXES-OUT PIC 9(04)V99. 05 EMP-NET-OUT PIC 9(04)V99. 05 FILLER PIC X(10). 01 EMP-TAX-RATE PIC V99. 01 EMP-POSITION-TITLE PIC X(18). 01 EMPLOYEE-PAY-TOTALS. 05 EMP-GROSS-PAY PIC 9(04)V99. 05 EMP-NET-PAY PIC 9(04)V99. 05 EMP-TAXES PIC 9(04)V99. 05 EMP-OVERTIME-HOURS PIC 9(02)V99. 05 EMP-OVERTIME-PAY PIC 9(03)V99. 01 PROGRAM-TOTALS. 05 PROGRAM-GROSS-PAY PIC 9(04)V99. 05 PROGRAM-NET-PAY PIC 9(04)V99. 05 PROGRAM-TAXES PIC 9(04)V99. 05 PROGRAM-RECORD-COUNT PIC 9(02). 05 PROGRAM-HOURS-WORKED PIC 9(04)V99. 05 PROGRAM-AVERAGE-GROSS PIC 9(04)V99. 05 PROGRAM-AVERAGE-NET PIC 9(04)V99. 05 PROGRAM-OVERTIME-HOURS PIC 9(04)V99. 05 PROGRAM-OVERTIME-PAY PIC 9(04)V99. 01 WS-DATE-IN PIC 9(08). 01 WS-POSITIONS. 05 WS-PROGRAMMER. 10 WS-PROGRAMMER-CODE PIC X(01) VALUE 'P'. 10 WS-PROGRAMMER-TITLE PIC X(18) VALUE 'PROGRAMMER'. 10 WS-PROGRAMMER-RATE PIC 9(02)V99 VALUE 65.00. 05 WS-ACCOUNTANT. 10 WS-ACCOUNTANT-CODE PIC X(01) VALUE 'A'. 10 WS-ACCOUNTANT-TITLE PIC X(18) VALUE 'ACCOUNTANT'. 10 WS-ACCOUNTANT-RATE PIC 9(02)V99 VALUE 58.00. 05 WS-MANAGER. 10 WS-MANAGER-CODE PIC X(01) VALUE 'M'. 10 WS-MANAGER-TITLE PIC X(18) VALUE 'MANAGER'. 10 WS-MANAGER-RATE PIC 9(02)V99 VALUE 62.00. 05 WS-INTERN. 10 WS-INTERN-CODE PIC X(01) VALUE 'I'. 10 WS-INTERN-TITLE PIC X(18) VALUE 'INTERN'. 10 WS-INTERN-RATE PIC 9(02)V99 VALUE 22.00. 05 WS-TESTER. 10 WS-TESTER-CODE PIC X(01) VALUE 'T'. 10 WS-TESTER-TITLE PIC X(18) VALUE 'TESTER'. 10 WS-TESTER-RATE PIC 9(02)V99 VALUE 22.00. PROCEDURE DIVISION. 0000-DRIVER. PERFORM 0100-INITIALIZE-PROGRAM PERFORM 1000-PROCESS-PAYROLL-RECORDS UNTIL EMP-PAY-DATE-IN NOT NUMERIC. PERFORM 2000-PROVIDE-FINAL-TOTALS PERFORM 3000-CLOSE-PROGRAM. 0100-INITIALIZE-PROGRAM. ACCEPT WS-DATE-IN FROM DATE YYYYMMDD. DISPLAY 'PAYROLL HW06YM FOR YIMENG MA'. DISPLAY 'PROGRAM BEGINS: ' WS-DATE-IN. MOVE .32 TO EMP-TAX-RATE. PERFORM 1900-ACCEPT-RECORD. 1000-PROCESS-PAYROLL-RECORDS. COMPUTE PROGRAM-RECORD-COUNT = PROGRAM-RECORD-COUNT + 1 DISPLAY ' RECORDS : ' PROGRAM-RECORD-COUNT PERFORM 1100-DETERMINE-POSITION-AND-PAY PERFORM 1200-CALCULATE-PAYROLL PERFORM 1300-UPDATE-PROGRAM-TOTALS PERFORM 1400-DISPLAY-PAYROLL-RECORD-INFO PERFORM 1900-ACCEPT-RECORD. 1100-DETERMINE-POSITION-AND-PAY. EVALUATE EMP-POSITION WHEN WS-PROGRAMMER-CODE MOVE WS-PROGRAMMER-TITLE TO EMP-POSITION-TITLE MOVE WS-PROGRAMMER-RATE TO PAY-RATE WHEN WS-ACCOUNTANT-CODE MOVE WS-ACCOUNTANT-TITLE TO EMP-POSITION-TITLE MOVE WS-ACCOUNTANT-RATE TO PAY-RATE WHEN WS-MANAGER-CODE MOVE WS-MANAGER-TITLE TO EMP-POSITION-TITLE MOVE WS-MANAGER-RATE TO PAY-RATE WHEN WS-INTERN-CODE MOVE WS-INTERN-TITLE TO EMP-POSITION-TITLE MOVE WS-INTERN-RATE TO PAY-RATE WHEN WS-TESTER-CODE MOVE WS-TESTER-TITLE TO EMP-POSITION-TITLE MOVE WS-TESTER-RATE TO PAY-RATE WHEN OTHER MOVE 'UNDEFINED-POSITION' TO EMP-POSITION-TITLE MOVE '00.00' TO PAY-RATE. 1200-CALCULATE-PAYROLL. IF EMP-PAY-TYPE = 'S' COMPUTE EMP-GROSS-PAY = 40 * PAY-RATE MOVE '0' TO EMP-OVERTIME-PAY IF HOURS-WORKED > 40 COMPUTE EMP-OVERTIME-HOURS = HOURS-WORKED - 40. IF EMP-PAY-TYPE = 'H' IF HOURS-WORKED > 40 COMPUTE EMP-OVERTIME-HOURS = HOURS-WORKED - 40 COMPUTE EMP-OVERTIME-PAY = 1.5 * PAY-RATE * EMP-OVERTIME-HOURS COMPUTE EMP-GROSS-PAY = 40 * PAY-RATE + EMP-OVERTIME-PAY IF HOURS-WORKED < 40 COMPUTE EMP-GROSS-PAY = HOURS-WORKED * PAY-RATE. COMPUTE EMP-TAXES = EMP-GROSS-PAY * EMP-TAX-RATE. COMPUTE EMP-NET-PAY = EMP-GROSS-PAY - EMP-TAXES. 1300-UPDATE-PROGRAM-TOTALS. COMPUTE PROGRAM-HOURS-WORKED = PROGRAM-HOURS-WORKED + HOURS-WORKED COMPUTE PROGRAM-GROSS-PAY = PROGRAM-GROSS-PAY + EMP-GROSS-PAY COMPUTE PROGRAM-TAXES = PROGRAM-TAXES + EMP-TAXES COMPUTE PROGRAM-NET-PAY = PROGRAM-NET-PAY + EMP-NET-PAY COMPUTE PROGRAM-OVERTIME-HOURS = PROGRAM-OVERTIME-HOURS + EMP-OVERTIME-HOURS COMPUTE PROGRAM-OVERTIME-PAY = PROGRAM-OVERTIME-PAY + EMP-OVERTIME-PAY COMPUTE PROGRAM-AVERAGE-GROSS = PROGRAM-GROSS-PAY / PROGRAM-RECORD-COUNT COMPUTE PROGRAM-AVERAGE-NET = PROGRAM-NET-PAY / PROGRAM-RECORD-COUNT. 1400-DISPLAY-PAYROLL-RECORD-INFO. DISPLAY 'PAY DATE : ' EMP-PAY-MM '/' EMP-PAY-DD '/' EMP-PAY-YY. DISPLAY 'EMPLOYEE NAME: ' EMP-LAST-NAME ', ' EMP-FIRST-NAME. DISPLAY ' NUMBER : ' EMP-NUMBER. DISPLAY ' HOURS : ' HOURS-WORKED. DISPLAY ' PAY RATE : ' PAY-RATE. DISPLAY ' POSITION : ' EMP-POSITION. DISPLAY ' TITLE : ' EMP-POSITION-TITLE DISPLAY ' PAY TYPE : ' EMP-PAY-TYPE. DISPLAY ' GROSS PAY: ' EMP-GROSS-PAY. DISPLAY ' OT PAY : ' EMP-OVERTIME-PAY. DISPLAY ' OT HOURS : ' EMP-OVERTIME-HOURS DISPLAY ' TAXES : ' EMP-TAXES. DISPLAY ' NET PAY : ' EMP-NET-PAY. DISPLAY '--'. 1900-ACCEPT-RECORD. ACCEPT EMPLOYEE-RECORD-IN. 2000-PROVIDE-FINAL-TOTALS. DISPLAY 'FILE TOTALS:'. DISPLAY ' RECORDS : ' PROGRAM-RECORD-COUNT. DISPLAY ' HOURS : ' PROGRAM-HOURS-WORKED. DISPLAY ' GROSS : ' PROGRAM-GROSS-PAY. DISPLAY ' TAXES : ' PROGRAM-TAXES. DISPLAY ' NET : ' PROGRAM-NET-PAY. DISPLAY ' OT HOURS : ' PROGRAM-OVERTIME-HOURS. DISPLAY ' OT PAY : ' PROGRAM-OVERTIME-PAY. DISPLAY 'AVERAGE GROSS: ' PROGRAM-AVERAGE-GROSS. DISPLAY ' AVERAGE NET: ' PROGRAM-AVERAGE-NET. 3000-CLOSE-PROGRAM. DISPLAY '--'. DISPLAY 'END OF PROGRAM FOR YIMENG MA'. STOP RUN.
IDENTIFICATION DIVISION. PROGRAM-ID. HW06GH. AUTHOR GAVIN HOOPER. DATE-WRITTEN 02/16/2019. DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-RECORD-IN. 05 EMP-PAY-DATE-IN. 10 EMP-PAY-YY PIC X(02). 10 EMP-PAY-MM PIC X(02). 10 EMP-PAY-DD PIC X(02). 05 EMP-NUMBER PIC X(03). 05 EMP-NAME. 10 EMP-LAST-NAME PIC X(15). 10 EMP-FIRST-NAME PIC X(10). 05 HOURS-WORKED PIC 99V99. 05 PAY-RATE PIC 99V99. 05 EMP-PAY-TYPE PIC X. 88 HOURLY-PAY VALUE 'H'. 88 SALARY-PAY VALUE 'S'. 05 EMP-POSITION PIC X. 88 PROGRAMMER VALUE 'P'. 88 ACCOUNTANT VALUE 'A'. 88 MANAGER VALUE 'M'. 88 INTERN VALUE 'I'. 88 TESTER VALUE 'T'. 05 EMP-GROSS-OUT PIC 9(04)V99. 05 EMP-OVERTIME-HOURS-OUT PIC 9(02). 05 EMP-OVERTIME-OUT PIC 9(04)V99. 05 EMP-TAXES-OUT PIC 9(04)V99. 05 EMP-NET-OUT PIC 9(04)V99. 05 FILLER PIC X(10). 01 EMP-TAX-RATE PIC V99. 01 EMP-POSITION-TITLE PIC X(18). 01 EMPLOYEE-PAY-TOTALS. 05 EMP-GROSS-PAY PIC 9(04)V99. 05 EMP-NET-PAY PIC 9(04)V99. 05 EMP-TAXES PIC 9(04)V99. 05 EMP-OVERTIME-HOURS PIC 9(02)V99. 05 EMP-OVERTIME-PAY PIC 9(03)V99. 01 PROGRAM-TOTALS. 05 PROGRAM-GROSS-PAY PIC 9(05)V99. 05 PROGRAM-NET-PAY PIC 9(05)V99. 05 PROGRAM-TAXES PIC 9(05)V99. 05 PROGRAM-RECORD-COUNT PIC 9(02). 05 PROGRAM-HOURS-WORKED PIC 9(04)V99. 05 PROGRAM-AVERAGE-GROSS PIC 9(04)V99. 05 PROGRAM-AVERAGE-NET PIC 9(04)V99. 05 PROGRAM-OVERTIME-HOURS PIC 9(04)V99. 05 PROGRAM-OVERTIME-PAY PIC 9(04)V99. 01 WS-DATE-IN PIC 9(08). 01 WS-POSITIONS. 05 WS-PROGRAMMER. 10 WS-PROGRAMMER-CODE PIC X(01) VALUE 'P'. 10 WS-PROGRAMMER-TITLE PIC X(18) VALUE 'PROGRAMMER'. 10 WS-PROGRAMMER-RATE PIC 9(02)V99 VALUE 65.00. 05 WS-ACCOUNTANT. 10 WS-ACCOUNTANT-CODE PIC X(01) VALUE 'A'. 10 WS-ACCOUNTANT-TITLE PIC X(18) VALUE 'ACCOUNTANT'. 10 WS-ACCOUNTANT-RATE PIC 9(02)V99 VALUE 58.00. 05 WS-MANAGER. 10 WS-MANAGER-CODE PIC X(01) VALUE 'M'. 10 WS-MANAGER-TITLE PIC X(18) VALUE 'MANAGER'. 10 WS-MANAGER-RATE PIC 9(02)V99 VALUE 62.00. 05 WS-INTERN. 10 WS-INTERN-CODE PIC X(01) VALUE 'I'. 10 WS-INTERN-TITLE PIC X(18) VALUE 'INTERN'. 10 WS-INTERN-RATE PIC 9(02)V99 VALUE 22.00. 05 WS-TESTER. 10 WS-TESTER-CODE PIC X(01) VALUE 'T'. 10 WS-TESTER-TITLE PIC X(18) VALUE 'TESTER'. 10 WS-TESTER-RATE PIC 9(02)V99 VALUE 22.00. 01 WS-FORMATTED-FIELDS. 05 WS-FMT-DOLLARS PIC $ZZ,ZZ9.99. 05 WS-FMT-HOURS PIC ZZZZZZ9.99. PROCEDURE DIVISION. 0000-DRIVER. PERFORM 0100-INITIALIZE-PROGRAM. PERFORM 1000-PROCESS-PAYROLL-RECORDS. PERFORM 2000-PROVIDE-FINAL-TOTALS. GOBACK. 0100-INITIALIZE-PROGRAM. PERFORM 1440-ACCEPT-RECORD. DISPLAY 'PAYROLL HW05GH FOR GAVIN HOOPER'. DISPLAY WS-POSITIONS. DISPLAY '--'. MOVE .32 TO EMP-TAX-RATE. 1000-PROCESS-PAYROLL-RECORDS. PERFORM 1400-DISPLAY-PAYROLL-RECORD-INFO UNTIL EMP-PAY-DATE-IN NOT NUMERIC. 1410-DETERMINE-POSITION-AND-PAY. EVALUATE EMP-POSITION WHEN 'P' MOVE 'PROGRAMMER' TO WS-POSITIONS WHEN 'A' MOVE 'ACCOUNTANT' TO WS-POSITIONS WHEN 'M' MOVE 'MANAGER' TO WS-POSITIONS WHEN 'I' MOVE 'INTERN' TO WS-POSITIONS WHEN 'T' MOVE 'TESTER' TO WS-POSITIONS WHEN OTHER MOVE 'UNDEFINED POSITION' TO WS-POSITIONS. EVALUATE EMP-POSITION WHEN 'P' MOVE 65.00 TO PAY-RATE WHEN 'A' MOVE 58.00 TO PAY-RATE WHEN 'M' MOVE 62.00 TO PAY-RATE WHEN 'I' MOVE 22.00 TO PAY-RATE WHEN 'T' MOVE 22.00 TO PAY-RATE WHEN OTHER MOVE 0000 TO PAY-RATE. 1420-CALCULATE-PAYROLL. IF HOURS-WORKED > 40 THEN COMPUTE EMP-OVERTIME-HOURS= HOURS-WORKED - 40. IF HOURS-WORKED > 40 THEN COMPUTE EMP-OVERTIME-PAY=PAY-RATE * 1.5 * EMP-OVERTIME-HOURS IF EMP-PAY-TYPE = 'S' THEN SUBTRACT EMP-OVERTIME-PAY FROM EMP-OVERTIME-PAY. IF EMP-PAY-TYPE = 'H' THEN COMPUTE EMP-GROSS-PAY= (HOURS-WORKED * PAY-RATE) + EMP-OVERTIME-PAY ELSE COMPUTE EMP-GROSS-PAY=(40 * PAY-RATE). COMPUTE EMP-TAXES= EMP-GROSS-PAY * EMP-TAX-RATE. COMPUTE EMP-NET-PAY= EMP-GROSS-PAY - EMP-TAXES. 1430-UPDATE-PROGRAM-TOTALS. ADD EMP-GROSS-PAY TO PROGRAM-GROSS-PAY. ADD EMP-TAXES TO PROGRAM-TAXES. ADD EMP-NET-PAY TO PROGRAM-NET-PAY. ADD HOURS-WORKED TO PROGRAM-HOURS-WORKED. ADD EMP-OVERTIME-HOURS TO PROGRAM-OVERTIME-HOURS. ADD EMP-OVERTIME-PAY TO PROGRAM-OVERTIME-PAY. COMPUTE PROGRAM-AVERAGE-GROSS=PROGRAM-GROSS-PAY/PROGRAM-RECORD-COUNT. COMPUTE PROGRAM-AVERAGE-NET=PROGRAM-NET-PAY/PROGRAM-RECORD-COUNT. 1400-DISPLAY-PAYROLL-RECORD-INFO. ADD 1 TO PROGRAM-RECORD-COUNT. PERFORM 1410-DETERMINE-POSITION-AND-PAY. PERFORM 1420-CALCULATE-PAYROLL. DISPLAY 'RECORD NUMBER #'PROGRAM-RECORD-COUNT' :'EMPLOYEE-RECORD-IN. DISPLAY 'PAY DATE : ' EMP-PAY-MM '/' EMP-PAY-DD '/' EMP-PAY-YY. DISPLAY 'EMPLOYEE NAME: ' EMP-LAST-NAME ', ' EMP-FIRST-NAME. DISPLAY ' NUMBER : ' EMP-NUMBER. DISPLAY ' HOURS : ' HOURS-WORKED. DISPLAY ' PAY RATE : ' PAY-RATE. DISPLAY ' POSITION : ' EMP-POSITION. DISPLAY ' TITLE : ' WS-POSITIONS. DISPLAY ' PAY TYPE : ' EMP-PAY-TYPE. DISPLAY ' GROSS PAY: ' EMP-GROSS-PAY. DISPLAY ' OT PAY : ' EMP-OVERTIME-PAY. DISPLAY ' OT HOURS : ' EMP-OVERTIME-HOURS. DISPLAY ' TAXES : ' EMP-TAXES. DISPLAY ' NET PAY : ' EMP-NET-PAY. DISPLAY '--'. PERFORM 1430-UPDATE-PROGRAM-TOTALS. PERFORM 1440-ACCEPT-RECORD. 1440-ACCEPT-RECORD. ACCEPT EMPLOYEE-RECORD-IN. 2000-PROVIDE-FINAL-TOTALS. DISPLAY 'FILE TOTALS:'. DISPLAY ' RECORDS : ' PROGRAM-RECORD-COUNT. DISPLAY ' HOURS : ' PROGRAM-HOURS-WORKED. DISPLAY ' GROSS : ' PROGRAM-GROSS-PAY. DISPLAY ' TAXES : ' PROGRAM-TAXES. DISPLAY ' NET : ' PROGRAM-NET-PAY. DISPLAY ' OT HOURS : ' PROGRAM-OVERTIME-HOURS. DISPLAY ' OT PAY : ' PROGRAM-OVERTIME-PAY. DISPLAY 'AVERAGE GROSS: ' PROGRAM-AVERAGE-GROSS. DISPLAY ' AVERAGE NET: ' PROGRAM-AVERAGE-NET. DISPLAY '--'. 3000-CLOSE-PROGRAM. STOP-RUN.
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. ENVIRONMENT DIVISION. CONFIGURATION SECTION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT OPTIONAL PGMFILE ASSIGN TO STDIN ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL FILE STATUS IS FS1. DATA DIVISION. FILE SECTION. FD PGMFILE. RECORD CONTAIN INTEGER CHARACTERS(FIXED LENGTH) RECORD IS VARYING IN SIZE INT1 TO INT2 DEPENDING ON WS-1(DYNAMIC LENGTH) RECORD IS VARYING IN SIZE INT1 TO INT2(VARIABLE LENGTH). BLOCK CONTAIN INTEGER CHARACTERS(FIXED LENGTH)/ DYNAMIC /VARIABLE. DATA RECORD IS PGMF-REC. RECORDING MODE IS F/V/U. FIXED/VARIABLE/UNDEFINED 01 PGMF-REC. 05 EMP-NAME PIC X(10). 05 EMP-NO PIC X(10). WORKING-STORAGE SECTION. 01 FS1 PIC 9(02). 01 WS-EOF-STATUS PIC X(01) VALUE SPACES. 88 EOF-Y VALUE 'Y'. LINKAGE SECTION. 01 PARM-IP PIX X(10). PROCEDURE DIVISION. OPEN INPUT PGMFILE. PERFORM READ-FILE UNTIL FS1 GREATER THAN ZERO. CLOSE PGMFILE. STOP RUN. READ-FILE. READ PGMFILE. IF FS1 EQUAL ZERO DISPLAY PGMF-REC.
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. PROCEDURE DIVISION. DISPLAY 'Hello, world'. STOP RUN.
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. DATA DIVISION. WORKING-STORAGE SECTION. 01 X-SEP-CHAR PIC X(1). 01 SY-L07DATA PIC X(2002). 01 NWEB-L07-DATA. 05 NWEB-L07DCN PIC X(16) VALUE SPACES. 05 NWEB-ORIGDCN PIC X(16) VALUE SPACES. 05 NWEB-LOWDCN PIC X(4) VALUE SPACES. 05 NWEB-HIGHDCN PIC X(4) VALUE SPACES. 05 NWEB-CNTRY PIC X(3) VALUE SPACES. 05 NWEB-050 PIC X(4) VALUE SPACES. 05 NWEB-060 PIC X(9) VALUE SPACES. 05 NWEB-070 PIC X(3) VALUE SPACES. 05 NWEB-081 PIC X(255) VALUE SPACES. 05 NWEB-082 PIC X(255) VALUE SPACES. 05 NWEB-083 PIC X(255) VALUE SPACES. 05 NWEB-084 PIC X(5) VALUE SPACES. 05 NWEB-085 PIC X(75) VALUE SPACES. 05 NWEB-086 PIC X(255) VALUE SPACES. 05 NWEB-091 PIC X(5) VALUE SPACES. 05 NWEB-092 PIC X(255) VALUE SPACES. 05 NWEB-093 PIC X(75) VALUE SPACES. 05 NWEB-094 PIC X(1) VALUE SPACES. 05 NWEB-095 PIC X(1) VALUE SPACES. 05 NWEB-096 PIC X(1) VALUE SPACES. 05 NWEB-100 PIC X(255) VALUE SPACES. 05 NWEB-110 PIC X(75) VALUE SPACES. 05 NWEB-120 PIC X(75) VALUE SPACES. PROCEDURE DIVISION. DISPLAY 'Hello, world'. MOVE 'DFZC18088GS00087;DFZC18088GS0AAAO;0087;0087;ZZ;0001;'- ';;GYROSCOPE;;;06811;CANADIAN ARMED MEGA SUPER GUYS;;;;;N;M;Y;;;DOE, JOHN' TO SY-L07DATA MOVE ';' TO X-SEP-CHAR UNSTRING SY-L07DATA DELIMITED BY X-SEP-CHAR INTO NWEB-L07DCN, NWEB-ORIGDCN, NWEB-LOWDCN, NWEB-HIGHDCN, NWEB-CNTRY, NWEB-050, NWEB-060, NWEB-070, NWEB-081, NWEB-082, NWEB-083, NWEB-084, NWEB-085, NWEB-086, NWEB-091, NWEB-092, NWEB-093, NWEB-094, NWEB-095, NWEB-096, NWEB-100, NWEB-110, NWEB-120 END-UNSTRING. DISPLAY 'UNSTRINGED DATA= ' DISPLAY 'L07DCN= ' NWEB-L07DCN DISPLAY 'ORIGDCN= ' NWEB-ORIGDCN DISPLAY 'LOWDCN=' NWEB-LOWDCN DISPLAY 'HIGHDCN=' NWEB-HIGHDCN DISPLAY 'CNTRY=' NWEB-CNTRY DISPLAY '050=' NWEB-050 DISPLAY '060=' NWEB-060 DISPLAY '070=' NWEB-070 DISPLAY '081=' NWEB-081 DISPLAY '082=' NWEB-082 DISPLAY '083=' NWEB-083 DISPLAY '084=' NWEB-084 DISPLAY '085=' NWEB-085 DISPLAY '086=' NWEB-086 DISPLAY '091=' NWEB-091 DISPLAY '092=' NWEB-092 DISPLAY '093=' NWEB-093 DISPLAY '094=' NWEB-094 DISPLAY '095=' NWEB-095 DISPLAY '096=' NWEB-096 DISPLAY '100=' NWEB-100 DISPLAY '110=' NWEB-110 DISPLAY '120=' NWEB-120 STOP RUN.
IDENTIFICATION DIVISION. PROGRAM-ID. HW06FL. DATA DIVISION. WORKING-STORAGE SECTION. 01 EMPLOYEE-RECORD-IN. 05 EMP-PAY-DATE-IN. 10 EMP-PAY-YY PIC X(02). 10 EMP-PAY-MM PIC X(02). 10 EMP-PAY-DD PIC X(02). 05 EMP-NUMBER PIC X(03). 05 EMP-NAME. 10 EMP-LAST-NAME PIC X(15). 10 EMP-FIRST-NAME PIC X(10). 05 HOURS-WORKED PIC 99V99. 05 PAY-RATE PIC 99V99. 05 EMP-PAY-TYPE PIC X. 88 HOURLY-PAY VALUE 'H'. 88 SALARY-PAY VALUE 'S'. 05 EMP-POSITION PIC X. 88 PROGRAMMER VALUE 'P'. 88 ACCOUNTANT VALUE 'A'. 88 MANAGER VALUE 'M'. 88 INTERN VALUE 'I'. 88 TESTER VALUE 'T'. 05 EMP-GROSS-OUT PIC 9(04)V99. 05 EMP-OVERTIME-HOURS-OUT PIC 9(02). 05 EMP-OVERTIME-OUT PIC 9(04)V99. 05 EMP-TAXES-OUT PIC 9(04)V99. 05 EMP-NET-OUT PIC 9(04)V99. 05 FILLER PIC X(10). 01 EMP-TAX-RATE PIC V99. 01 EMP-POSITION-TITLE PIC X(18). 01 EMPLOYEE-PAY-TOTALS. 05 EMP-GROSS-PAY PIC 9(04)V99. 05 EMP-NET-PAY PIC 9(04)V99. 05 EMP-TAXES PIC 9(04)V99. 05 EMP-OVERTIME-HOURS PIC 9(02)V99. 05 EMP-OVERTIME-PAY PIC 9(03)V99. 01 PROGRAM-TOTALS. 05 PROGRAM-GROSS-PAY PIC 9(04)V99. 05 PROGRAM-NET-PAY PIC 9(04)V99. 05 PROGRAM-TAXES PIC 9(04)V99. 05 PROGRAM-RECORD-COUNT PIC 9(02). 05 PROGRAM-HOURS-WORKED PIC 9(04)V99. 05 PROGRAM-AVERAGE-GROSS PIC 9(04)V99. 05 PROGRAM-AVERAGE-NET PIC 9(04)V99. 05 PROGRAM-OVERTIME-HOURS PIC 9(04)V99. 05 PROGRAM-OVERTIME-PAY PIC 9(04)V99. 01 WS-DATE-IN. 05 WS-DATE-IN-YYYY PIC X(04). 05 WS-DATE-IN-MM PIC X(02). 05 WS-DATE-IN-DD PIC X(02). 01 WS-POSITIONS. 05 WS-PROGRAMMER. 10 WS-PROGRAMMER-CODE PIC X(01) VALUE 'P'. 10 WS-PROGRAMMER-TITLE PIC X(18) VALUE 'PROGRAMMER'. 10 WS-PROGRAMMER-RATE PIC 9(02)V99 VALUE 65.00. 05 WS-ACCOUNTANT. 10 WS-ACCOUNTANT-CODE PIC X(01) VALUE 'A'. 10 WS-ACCOUNTANT-TITLE PIC X(18) VALUE 'ACCOUNTANT'. 10 WS-ACCOUNTANT-RATE PIC 9(02)V99 VALUE 58.00. 05 WS-MANAGER. 10 WS-MANAGER-CODE PIC X(01) VALUE 'M'. 10 WS-MANAGER-TITLE PIC X(18) VALUE 'MANAGER'. 10 WS-MANAGER-RATE PIC 9(02)V99 VALUE 62.00. 05 WS-INTERN. 10 WS-INTERN-CODE PIC X(01) VALUE 'I'. 10 WS-INTERN-TITLE PIC X(18) VALUE 'INTERN'. 10 WS-INTERN-RATE PIC 9(02)V99 VALUE 22.00. 05 WS-TESTER. 10 WS-TESTER-CODE PIC X(01) VALUE 'T'. 10 WS-TESTER-TITLE PIC X(18) VALUE 'TESTER'. 10 WS-TESTER-RATE PIC 9(02)V99 VALUE 22.00. PROCEDURE DIVISION. 0000-DRIVER. PERFORM 0100-INITIALIZE-PROGRAM. PERFORM 1000-PROCESS-PAYROLL-RECORDS 10 TIMES. PERFORM 2000-PROVIDE-FINAL-TOTALS. PERFORM 3000-CLOSE-PROGRAM. STOP RUN. 0100-INITIALIZE-PROGRAM. DISPLAY 'PAYROLL HW05JS FOR JACOB STEINER'. ACCEPT WS-DATE-IN FROM DATE YYYYMMDD DISPLAY 'PROGRAM BEGINS: ' WS-DATE-IN-MM '/' WS-DATE-IN-DD '/' WS-DATE-IN-YYYY DISPLAY WS-POSITIONS MOVE .32 TO EMP-TAX-RATE ACCEPT EMPLOYEE-RECORD-IN DISPLAY '--'. 1000-PROCESS-PAYROLL-RECORDS. add 1 to PROGRAM-RECORD-COUNT PERFORM 1100-DETERMINE-POSITION-AND-PAY PERFORM 1200-CALCULATE-PAYROLL PERFORM 1300-UPDATE-PROGRAM-TOTALS PERFORM 1400-DISPLAY-PAYROLL-RECORD-INFO PERFORM 1900-ACCEPT-RECORD. 1100-DETERMINE-POSITION-AND-PAY. EVALUATE EMP-POSITION WHEN 'P' move WS-PROGRAMMER-TITLE TO EMP-POSITION-TITLE move WS-PROGRAMMER-RATE TO PAY-RATE WHEN 'A' move WS-ACCOUNTANT-TITLE TO EMP-POSITION-TITLE move WS-ACCOUNTANT-RATE TO PAY-RATE WHEN 'M' move WS-MANAGER-TITLE TO EMP-POSITION-TITLE move WS-MANAGER-RATE TO PAY-RATE WHEN 'I' move WS-INTERN-TITLE TO EMP-POSITION-TITLE move WS-INTERN-RATE TO PAY-RATE WHEN 'T' move WS-TESTER-TITLE TO EMP-POSITION-TITLE move WS-TESTER-RATE TO PAY-RATE WHEN OTHER MOVE 'UNDEFINED' TO EMP-POSITION-TITLE END-EVALUATE. 1200-CALCULATE-PAYROLL. IF EMP-PAY-TYPE = 'H' AND HOURS-WORKED > 40.00 compute EMP-OVERTIME-HOURS = HOURS-WORKED - 40 compute EMP-OVERTIME-PAY = EMP-OVERTIME-HOURS * 1.5 * PAY-RATE compute EMP-GROSS-PAY = 40 * PAY-RATE + EMP-OVERTIME-PAY ELSE IF EMP-PAY-TYPE = 'S' COMPUTE EMP-GROSS-PAY = 40 * PAY-RATE ELSE COMPUTE EMP-GROSS-PAY = HOURS-WORKED * PAY-RATE END-IF compute EMP-TAXES = EMP-GROSS-PAY * EMP-TAX-RATE. compute EMP-NET-PAY = EMP-GROSS-PAY - EMP-TAXES. 1300-UPDATE-PROGRAM-TOTALS. add EMP-NET-PAY to PROGRAM-NET-PAY. add EMP-TAXES to PROGRAM-TAXES. add EMP-GROSS-PAY to PROGRAM-GROSS-PAY. add HOURS-WORKED to PROGRAM-HOURS-WORKED. add EMP-OVERTIME-HOURS to PROGRAM-OVERTIME-HOURS. add EMP-OVERTIME-PAY to PROGRAM-OVERTIME-PAY. 1400-DISPLAY-PAYROLL-RECORD-INFO. DISPLAY 'RECORD #' PROGRAM-RECORD-COUNT': 'EMPLOYEE-RECORD-IN DISPLAY 'PAY DATE : ' EMP-PAY-MM '/' EMP-PAY-DD '/' EMP-PAY-YY DISPLAY 'EMPLOYEE NAME: ' EMP-NAME DISPLAY ' NUMBER : ' EMP-NUMBER DISPLAY ' HOURS : ' HOURS-WORKED DISPLAY ' PAY RATE : ' PAY-RATE DISPLAY ' POSITION : ' EMP-POSITION DISPLAY ' TITLE : ' EMP-POSITION-TITLE DISPLAY ' PAY TYPE : ' EMP-PAY-TYPE DISPLAY ' GROSS PAY: ' EMP-GROSS-PAY DISPLAY ' OT PAY : ' EMP-OVERTIME-PAY DISPLAY ' OT HOURS : ' EMP-OVERTIME-HOURS DISPLAY ' TAXES : ' EMP-TAXES DISPLAY ' NET PAY : ' EMP-NET-PAY DISPLAY '--'. 1900-ACCEPT-RECORD. ACCEPT EMPLOYEE-RECORD-IN. 2000-PROVIDE-FINAL-TOTALS. compute PROGRAM-AVERAGE-GROSS = PROGRAM-GROSS-PAY / 2. compute PROGRAM-AVERAGE-NET = PROGRAM-NET-PAY / 2. DISPLAY 'FILE TOTALS:'. DISPLAY ' RECORDS : ' PROGRAM-RECORD-COUNT. DISPLAY ' HOURS : ' PROGRAM-HOURS-WORKED. DISPLAY ' GROSS : ' PROGRAM-GROSS-PAY. DISPLAY ' TAXES : ' PROGRAM-TAXES. DISPLAY ' NET : ' PROGRAM-NET-PAY. DISPLAY ' OT HOURS : ' PROGRAM-OVERTIME-HOURS. DISPLAY ' OT PAY : ' PROGRAM-OVERTIME-PAY. DISPLAY 'AVERAGE GROSS: ' PROGRAM-AVERAGE-GROSS. DISPLAY ' AVERAGE NET: ' PROGRAM-AVERAGE-NET. DISPLAY '--'. 3000-CLOSE-PROGRAM. DISPLAY 'END OF PROGRAM FOR JACOB STEINER'.
We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy. Accept Learn more