home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / compound.zip / FUTURE.PRG < prev    next >
Text File  |  1980-01-01  |  2KB  |  61 lines

  1. *  PROGRAM  --- FUTURE.PRG
  2. *               COMPOUND INTEREST:FUTURE VALUE
  3. *  AUTHOR:      VENKAT PENUGONDE,  IRVICE MICRO ARTS, IRVINE, CA
  4. *
  5. *  MODIFIED TO RUN WITH  WITH DBASE II
  6.  
  7. * THIS PROGRAM CALCULATES THE FUTURE VALUE AND THE INTEREST AMOUNT
  8. *  PAID IN A COMPOUND INTEREST CALCULATION GIVE THE FOLLOWING:
  9.  
  10. *           PRINCIPAL = PRESENT VALUE OR PRINCIPAL
  11. *        ANNRATE  = NOMINAL ANNUAL INTEREST RATE IN %
  12. *        YPERIOD  = NUMBER OF COMPOUNDIING PERIODS PER YEAR
  13. *        TPERIOD = TOTAL NUMBER OF TIME PERIODS
  14.  
  15. SET TALK OFF
  16. IF FILE('DBASEOVR.COM')
  17.    ERASE
  18. ELSE
  19.    CLEAR
  20. ENDIF
  21. STORE 0.00 TO PRINCIPAL,ANNRATE
  22. STORE 0 TO YPERIOD,TPERIOD
  23. @ 2,30  SAY 'COMPOUND INTEREST'
  24. @ 3,33  SAY 'FUTURE VALUE'
  25. @ 5,17  SAY 'PRINCIAL [enter zero to exit]  :'
  26. @ 7,17  SAY 'ANNUAL INTEREST RATE [ in % ]  :'
  27. @ 9,17  SAY 'COMPOUNDING PERIODS PER YEAR   :'
  28. @ 11,17 SAY 'NUMBER OF COMPOUNDING PERIODS  :'
  29. STORE 'T' TO MCONTINUE
  30. DO WHILE MCONTINUE = 'T'
  31.    @ 5,51 GET PRINCIPAL
  32.    READ
  33.    IF PRINCIPAL <= 0
  34.       STORE 'F' TO MCONTINUE
  35.       LOOP
  36.    ENDIF
  37.    @ 7,51 GET ANNRATE
  38.    @ 9,51 GET YPERIOD
  39.    @ 11,51 GET TPERIOD
  40.    READ
  41.  
  42. *  COMPUTE INTEREST RATE PER PERIOD
  43.    STORE ANNRATE/YPERIOD TO INTRATE
  44. *  
  45.  
  46. *  COMPUTE FINAL VALUE AT THE END OF TOTAL PERIOD
  47.    STORE PRINCIPAL TO MOLD
  48.    STORE 1 TO N
  49.    DO WHILE N<= TPERIOD
  50.       STORE MOLD*(1+INTRATE/100) TO MNEW
  51.       STORE MNEW TO MOLD
  52.       STORE N+1 TO N
  53.    ENDDO
  54. *
  55.  
  56.    STORE MNEW - PRINCIPAL TO INTAMOUNT
  57.    @ 15,17 SAY 'FUTURE VALUE                   ' + STR(MNEW,10,2)
  58.    @ 17,17 SAY 'AMOUNT PAID AS INTEREST        ' + STR(INTAMOUNT,10,2)
  59. ENDDO
  60. RETURN
  61.