fork download
  1. IDENTIFICATION DIVISION.
  2. *
  3. PROGRAM-ID. LOANT.
  4. *
  5. DATE-WRITTEN. 04/16/84.
  6. *
  7. * MODIFIED 10/18/97.
  8. *
  9. * *******************************
  10. * * *
  11. * * Judson D. McClendon *
  12. * * Sun Valley Systems *
  13. * * 329 37th Court N.E. *
  14. * * Birmingham, AL 35215 *
  15. * * 205-853-8440 *
  16. * * *
  17. * *******************************
  18. *
  19. ENVIRONMENT DIVISION.
  20. *
  21. CONFIGURATION SECTION.
  22. *
  23. INPUT-OUTPUT SECTION.
  24. *
  25. FILE-CONTROL.
  26. *
  27. I-O-CONTROL.
  28. *
  29. DATA DIVISION.
  30. *
  31. FILE SECTION.
  32. *
  33. WORKING-STORAGE SECTION.
  34. *
  35. * ALPHA 77'S
  36. *
  37. 77 WS-ANSWER PIC X(01) VALUE SPACE.
  38. 77 WS-COMMAND PIC X(01) VALUE SPACE.
  39. 77 WS-ERR-MSG PIC X(40) VALUE SPACES.
  40. *
  41. * NUMERIC 77'S
  42. *
  43. 77 WS-ESCAPE-FLAG PIC 9(01) VALUE ZERO.
  44. *
  45. COPY "LOANW.COB".
  46. *
  47. SCREEN SECTION.
  48. *
  49. *
  50. * C O M M A N D S C R E E N
  51. *
  52. 01 COMMAND-SCREEN.
  53. 03 BLANK SCREEN.
  54. 03 LINE 01 COLUMN 20 VALUE
  55. "L O A N C O M P U T A T I O N".
  56. 03 LINE 03 COLUMN 01 VALUE
  57. "Press: P=Compute Payment Amount,".
  58. 03 LINE 04 COLUMN 08 VALUE
  59. "L=Compute Loan Amount,".
  60. 03 LINE 05 COLUMN 05 VALUE
  61. "or ESCape to exit: ".
  62. 03 PIC X TO WS-COMMAND AUTO.
  63. *
  64. *
  65. * L O A N S C R E E N
  66. *
  67. 01 LOAN-SCREEN.
  68. 03 LINE 03 COLUMN 01 ERASE EOS.
  69. 03 LINE 03 COLUMN 01 VALUE "Payment Amt: ".
  70. 03 PIC ZZZZZ9.99 USING LW-PMT-AMT.
  71. 03 LINE 04 COLUMN 01 VALUE "Interest Rate: ".
  72. 03 PIC Z9.99 USING LW-INT-RATE.
  73. 03 LINE 05 COLUMN 01 VALUE "Number Payments: ".
  74. 03 PIC ZZ9 USING LW-NBR-PMTS.
  75. *
  76. *
  77. * L O A N A N S W E R S C R E E N
  78. *
  79. 01 LOAN-ANSWER-SCREEN.
  80. 03 LINE 07 COLUMN 01 VALUE "Loan Amount: ".
  81. 03 PIC ZZZ,ZZ9.99 FROM LW-LOAN-AMT.
  82. 03 LINE 08 COLUMN 01 VALUE "Total Inter: ".
  83. 03 PIC ZZZ,ZZ9.99 FROM LW-TOTAL-INT.
  84. 03 LINE 09 COLUMN 01 VALUE "Total Pmts: ".
  85. 03 PIC ZZZ,ZZ9.99 FROM LW-TOTAL-PMTS.
  86. *
  87. *
  88. * P A Y M E N T S C R E E N
  89. *
  90. 01 PAYMENT-SCREEN.
  91. 03 LINE 03 COLUMN 01 ERASE EOS.
  92. 03 LINE 03 COLUMN 01 VALUE "Loan Amount: ".
  93. 03 PIC ZZZZZ9.99 USING LW-LOAN-AMT.
  94. 03 LINE 04 COLUMN 01 VALUE "Interest Rate: ".
  95. 03 PIC Z9.99 USING LW-INT-RATE.
  96. 03 LINE 05 COLUMN 01 VALUE "Number Payments: ".
  97. 03 PIC ZZ9 USING LW-NBR-PMTS.
  98. *
  99. *
  100. * P A Y M E N T A N S W E R S C R E E N
  101. *
  102. 01 PAYMENT-ANSWER-SCREEN.
  103. 03 LINE 07 COLUMN 01 VALUE "Payment Amt: ".
  104. 03 PIC ZZZ,ZZ9.99 FROM LW-PMT-AMT.
  105. 03 LINE 08 COLUMN 01 VALUE "Total Inter: ".
  106. 03 PIC ZZZ,ZZ9.99 FROM LW-TOTAL-INT.
  107. 03 LINE 09 COLUMN 01 VALUE "Total Pmts: ".
  108. 03 PIC ZZZ,ZZ9.99 FROM LW-TOTAL-PMTS.
  109. *
  110. *
  111. * E R R O R S C R E E N
  112. *
  113. 01 ERROR-SCREEN.
  114. 03 LINE 24 COLUMN 20 HIGHLIGHT BLANK LINE
  115. PIC X(40) FROM WS-ERR-MSG.
  116. 03 COLUMN 70
  117. PIC X TO WS-ANSWER AUTO.
  118. /
  119. PROCEDURE DIVISION.
  120. *
  121. *
  122. * C O N T R O L
  123. *
  124. 000000-CONTROL.
  125. *
  126. INITIALIZE LOAN-WORK-AREA.
  127. *
  128. DISPLAY COMMAND-SCREEN.
  129. *
  130. PERFORM 000100-GET-COMMAND
  131. THRU 000100-EXIT
  132. UNTIL (WS-ESCAPE-FLAG = 1).
  133. *
  134. 000000-EXIT.
  135. STOP RUN.
  136. *
  137. *
  138. * G E T C O M M A N D
  139. *
  140. 000100-GET-COMMAND.
  141. *
  142. MOVE SPACE TO WS-COMMAND.
  143. ACCEPT COMMAND-SCREEN
  144. ON ESCAPE
  145. MOVE 1 TO WS-ESCAPE-FLAG
  146. GO TO 000100-EXIT.
  147. INSPECT WS-COMMAND
  148. CONVERTING "abcdefghijklmnopqrstuvwxyz"
  149. TO "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
  150. *
  151. IF (WS-COMMAND = "P")
  152. DISPLAY PAYMENT-SCREEN
  153. PERFORM 000500-FIND-PAYMENT
  154. THRU 000500-EXIT
  155. ELSE
  156. IF (WS-COMMAND = "L")
  157. DISPLAY LOAN-SCREEN
  158. PERFORM 000600-FIND-LOAN
  159. THRU 000600-EXIT.
  160. *
  161. DISPLAY COMMAND-SCREEN.
  162. *
  163. 000100-EXIT.
  164. EXIT.
  165. *
  166. *
  167. * F I N D P A Y M E N T
  168. *
  169. 000500-FIND-PAYMENT.
  170. *
  171. ACCEPT PAYMENT-SCREEN
  172. ON ESCAPE
  173. GO TO 000500-EXIT.
  174. *
  175. PERFORM 004000-COMPUTE-PAYMENT
  176. THRU 004000-EXIT.
  177. *
  178. IF (LW-LOAN-ERROR-FLAG = 1)
  179. MOVE "PARAMETER ERROR" TO WS-ERR-MSG
  180. DISPLAY ERROR-SCREEN
  181. GO TO 000500-FIND-PAYMENT.
  182. *
  183. DISPLAY PAYMENT-ANSWER-SCREEN.
  184. *
  185. MOVE "PRESS A KEY TO CONTINUE" TO WS-ERR-MSG..
  186. DISPLAY ERROR-SCREEN.
  187. ACCEPT ERROR-SCREEN.
  188. *
  189. 000500-EXIT.
  190. EXIT.
  191. *
  192. *
  193. * F I N D L O A N
  194. *
  195. 000600-FIND-LOAN.
  196. *
  197. ACCEPT LOAN-SCREEN
  198. ON ESCAPE
  199. GO TO 000600-EXIT.
  200. *
  201. PERFORM 004100-COMPUTE-LOAN
  202. THRU 004100-EXIT.
  203. *
  204. IF (LW-LOAN-ERROR-FLAG = 1)
  205. MOVE "PARAMETER ERROR" TO WS-ERR-MSG
  206. DISPLAY ERROR-SCREEN
  207. GO TO 000600-FIND-LOAN.
  208. *
  209. DISPLAY LOAN-ANSWER-SCREEN.
  210. *
  211. MOVE "PRESS A KEY TO CONTINUE" TO WS-ERR-MSG..
  212. DISPLAY ERROR-SCREEN.
  213. ACCEPT ERROR-SCREEN.
  214. *
  215. 000600-EXIT.
  216. EXIT.
  217. COPY "LOANP.COB".
  218.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cob:45: Error: LOANW.COB: No such file or directory
prog.cob:217: Error: LOANP.COB: No such file or directory
stdout
Standard output is empty