fork download
  1. 0010 IDENTIFICATION DIVISION.
  2. 0015 PROGRAM-ID. VENTAS.
  3. 0020 ENVIRONMENT DIVISION.
  4. 0025 CONFIGURATION SECTION.
  5. 0030 SOURCE-COMPUTER. IBM-360.
  6. 0035 OBJECT-COMPUTER. IBM-360.
  7. 0040 INPUT-OUTPUT SECTION.
  8. 0045 FILE-CONTROL.
  9. 0050 SELECT ARCHIVO-IN ASSIGN TO UT-S-SYSIN.
  10. 0055 SELECT PRINT-FILE ASSIGN TO UT-S-SYSPRINT.
  11. 0060 DATA DIVISION.
  12. 0065 FILE SECTION.
  13. 0070 FD ARCHIVO-IN.
  14. RECORD CONTAINS 12 CHARACTERS.
  15. 0075 01 VENTAS-RECORD.
  16. 05 NUMERO-VENDEDOR PIC 9(5).
  17. 05 VENTA PIC 9(5)V99.
  18. 0080 FD PRINT-FILE
  19. RECORD CONTAINS 132 CHARACTERS.
  20. 0085 01 PRINT-LINE PIC X(132).
  21. 0090 WORKING-STORAGE SECTION.
  22. 0095 01 ARE-THERE-MORE-RECORDS PICTURE XXX VALUE 'YES'.
  23. 0100 01 CALCULOS.
  24. 05 COM PIC 99999V99 VALUE 0.
  25. 05 TOTAL PIC 999999V99 VALUE 0.
  26. 0105 01 HEADS-1.
  27. 05 FILLER PIC X(54) VALUE SPACES.
  28. 05 FILLER PIC X(21) VALUE 'INFORME DE VENDEDORES'.
  29. 05 FILLER PIC X(57) VALUE SPACES.
  30. 0110 01 HEADS-2.
  31. 05 FILLER PIC X().
  32. 05 FILLER PIC X(15) VALUE 'NUMERO VENDEDOR'.
  33. 05 FILLER PIC X().
  34. 05 FILLER PIC X(5) VALUE 'VENTA'.
  35. 05 FILLER PIC X().
  36. 05 FILLER PIC X(8) VALUE 'COMISION'.
  37. 05 FILLER PIC X().
  38. 0115 01 DETAIL-LINE.
  39. 05 FILLER PIC X(26).
  40. 05 NUMERO-VENDEDOR-O PIC 9(5).
  41. 05 FILLER PIC X(26).
  42. 05 VENTA-O PIC $99,999.99.
  43. 05 FILLER PIC X(26).
  44. 05 COM-O PIC $99,999.99.
  45. 05 FILLER PIC X(29).
  46. 0120 01 TOTAL-LINE.
  47. 05 FILLER PIC X(84).
  48. 05 FILLER PIC X(5) VALUE 'TOTAL'.
  49. 05 FILLER PIC X(3).
  50. 05 TOTAL-O PIC $999,999.99.
  51. 05 FILLER PIC X(29).
  52. 0125 PROCEDURE DIVISION.
  53. 0130 MAIN-MODULE.
  54. 0135 OPEN INPUT ARCHIVO-IN OUTPUT PRINT-FILE.
  55. 0140 PERFORM WRITE-HEADS.
  56. 0145 READ ARCHIVO-IN AT END MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.
  57. 0150 PERFORM WRITE-DETAIL UNTIL ARE-THERE-MORE-RECORDS = 'NO '.
  58. 0155 PERFORM WRITE-TOTALS.
  59. 0160 CLOSE ARCHIVO-IN PRINT-FILE.
  60. 0170 STOP RUN.
  61. 0175 WRITE-HEADS.
  62. MOVE HEADS-1 TO PRINT-LINE.
  63. WRITE PRINT-LINE AFTER 1.
  64. MOVE HEADS-2 TO PRINT-LINE.
  65. WRITE PRINT-LINE AFTER 1.
  66. MOVE SPACES TO PRINT-LINE.
  67. WRITE PRINT-LINE.
  68. 0180 WRITE-DETAILS.
  69. IF VENTA > 5000
  70. COMPUTE COM= VENTA * .15.
  71. END-IF.
  72. IF VENTA > 3000
  73. COMPUTE COM= VENTA * .10.
  74. END-IF.
  75. IF VENTA > 1000
  76. COMPUTE COM= VENTA * .05.
  77. ELSE
  78. COMPUTE COM= VENTA * .03.
  79. END-IF.
  80. COMPUTE TOTAL= TOTAL + COM.
  81. MOVE NUMERO-VENDEDOR TO NUMERO-VENDEDOR-O.
  82. MOVE VENTA TO VENTA-O.
  83. MOVE COM TO COM-O.
  84. MOVE DETAIL-LINE TO PRINT-LINE.
  85. WRITE PRINT-LINE AFTER 1.
  86. READ ARCHIVO-IN AT END MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.
  87. 0185 WRITE-TOTALS.
  88. MOVE TOTAL TO TOTAL-O.
  89. MOVE TOTAL-LINE TO PRINT-LINE.
  90. WRITE PRINT-LINE AFTER 2 LINES.
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cob:89: Warning: File not terminated by a newline
prog.cob:14: Error: RECORD description missing or invalid
stdout
Standard output is empty