IDENTIFICATION DIVISION. PROGRAM-ID. TEST01a. ENVIRONMENT DIVISION. CONFIGURATION SECTION. * INPUT-OUTPUT SECTION. DATA DIVISION. FILE SECTION. WORKING-STORAGE SECTION. 01 W01-ADDITION. 05 W01-ADD PIC 9(6). 05 W01-ADD1 PIC 9(6). 05 W01-ADD2 PIC 9(2). 05 W01-ADD3 PIC 9(6). 05 W01-ADDT OCCURS 2 TIMES PIC 9(8). 05 W01-ADD4 PIC S9(4)V9. 05 W01-ADD5 PIC S9(4)V9(2). 05 W01-ADD6 PIC S9(4)V9(3). 05 W01-ADD7 PIC S9(4)V9(4). PROCEDURE DIVISION. A-000. PERFORM A-100. STOP RUN. A-100. DISPLAY "* ------ add statements tests begin ------ *". MOVE 10 TO W01-ADD. MOVE 11 TO W01-ADD1. MOVE 98 TO W01-ADD2. DISPLAY "W01-ADD=" W01-ADD " W01-ADD1=" W01-ADD1 " W01-ADD2=" W01-ADD2. ADD 1 2 3.5 TO W01-ADD ROUNDED W01-ADD1 W01-ADD2 ON SIZE ERROR PERFORM E-100 NOT ON SIZE ERROR PERFORM D-100 END-ADD. DISPLAY "add 1 2 3.5 (6.5) TO W01-ADD = " W01-ADD " rounded W01-ADD1 =" W01-ADD1 " W01-ADD2 =" W01-ADD2 " rounded". MOVE 98 TO W01-ADD. MOVE 0 TO W01-ADD1 W01-ADD2 W01-ADD3. DISPLAY "W01-ADD=" W01-ADD " W01-ADD1=" W01-ADD1 " W01-ADD2=" W01-ADD2 " W01-ADD3=" W01-ADD3. ADD 11 22 33.5 TO W01-ADD GIVING W01-ADD1 W01-ADD2 W01-ADD3 ROUNDED NOT ON SIZE ERROR PERFORM D-100 END-ADD. DISPLAY "add 11 22 33.5 (66.5) TO W01-ADD = " W01-ADD " giving W01-ADD1 =" W01-ADD1 " W01-ADD2 =" W01-ADD2 " W01-ADD3 =" W01-ADD3 " rounded". MOVE 1 TO W01-ADD4 W01-ADD5 W01-ADD6 W01-ADD7. DISPLAY "W01-ADD4=" W01-ADD4 " W01-ADD5=" W01-ADD5 " W01-ADD6=" W01-ADD6 " W01-ADD7=" W01-ADD7. ADD -28.36 TO -11.69 GIVING W01-ADD4 ROUNDED W01-ADD5 ROUNDED W01-ADD6 ROUNDED W01-ADD7 ROUNDED END-ADD. DISPLAY "add -28.36 to -11.69 giving W01-ADD4 = " W01-ADD4 " rounded" " W01-ADD5 =" W01-ADD5 " rounded" " W01-ADD6 =" W01-ADD6 " rounded" " W01-ADD7 =" W01-ADD7 " rounded". MOVE 1 TO W01-ADD4 W01-ADD5 W01-ADD6 W01-ADD7. DISPLAY "W01-ADD4=" W01-ADD4 " W01-ADD5=" W01-ADD5 " W01-ADD6=" W01-ADD6 " W01-ADD7=" W01-ADD7. ADD 28.36 2 TO 11.69 GIVING W01-ADD4 ROUNDED W01-ADD5 W01-ADD6 W01-ADD7 END-ADD. DISPLAY "add 28.36 2 to 11.69 giving W01-ADD4 = " W01-ADD4 " rounded W01-ADD5 =" W01-ADD5 " W01-ADD6 =" W01-ADD6 " W01-ADD7 =" W01-ADD7. MOVE 11.69 TO W01-ADD5. MOVE 2 TO W01-ADD4 W01-ADD6 W01-ADD7. DISPLAY "W01-ADD4=" W01-ADD4 " W01-ADD5=" W01-ADD5 " W01-ADD6=" W01-ADD6 " W01-ADD7=" W01-ADD7. * ADD 28.36 GIVING W01-ADD4 W01-ADD5 W01-ADD6 W01-ADD7 ADD 28.36 W01-ADD5 GIVING W01-ADD4 ROUNDED W01-ADD6 W01-ADD7 ON SIZE ERROR PERFORM E-100 NOT ON SIZE ERROR PERFORM D-100 END-ADD. DISPLAY "add 28.36 W01-ADD5 = " W01-ADD5 " giving W01-ADD4 = " W01-ADD4 " rounded W01-ADD6 =" W01-ADD6 " W01-ADD7 =" W01-ADD7. DISPLAY "* ------ add statements tests end ------ *". D-100. DISPLAY "D-100: An add exception erorr has _NOT_ occured" . E-100. DISPLAY "E-100: An add exception erorr has occured" .