home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
xbase
/
library
/
dbase
/
compound
/
present.prg
< prev
next >
Wrap
Text File
|
1979-12-31
|
2KB
|
65 lines
* PROGRAM --- PRESENT.PRG
* COMPOUND INTEREST: PRINCIPAL OR PRESENT VALUE
* AUTHOR: VENKAT PENUGONDE, IRVICE MICRO ARTS, IRVINE, CA
*
* MODIFIED TO RUN WITH WITH DBASE II
* THIS PROGRAM CALCULATES THE PRESENT VALUE AND THE INTEREST AMOUNT
* PAID IN A COMPOUND INTEREST CALCULATION GIVE THE FOLLOWING:
* PRINCIPAL = PRESENT VALUE OR PRINCIPAL
* ANNRATE = NOMINAL ANNUAL INTEREST RATE IN %
* YPERIOD = NUMBER OF COMPOUNDIING PERIODS PER YEAR
* TPERIOD = TOTAL NUMBER OF TIME PERIODS
SET TALK OFF
IF FILE('DBASEOVR.COM')
ERASE
ELSE
CLEAR
ENDIF
STORE 0.00 TO FUVALUE,ANNRATE
STORE 0 TO YPERIOD,TPERIOD
@ 2,30 SAY 'COMPOUND INTEREST'
@ 3,30 SAY 'PRINCIPAL REQUIRED'
@ 5,17 SAY 'FUTURE VALUE [enter zero to exit] :'
@ 7,17 SAY 'ANNUAL INTEREST RATE [ in % ] :'
@ 9,17 SAY 'COMPOUNDING PERIODS PER YEAR :'
@ 11,17 SAY 'NUMBER OF COMPOUNDING PERIODS :'
STORE 'T' TO MCONTINUE
DO WHILE MCONTINUE = 'T'
@ 5,55 GET FUVALUE
READ
IF FUVALUE <= 0
STORE 'F' TO MCONTINUE
LOOP
ENDIF
@ 7,55 GET ANNRATE
@ 9,55 GET YPERIOD
@ 11,55 GET TPERIOD
READ
* COMPUTE INTEREST RATE PER PERIOD
STORE ANNRATE/YPERIOD TO INTRATE
*
* COMPUTE PRINCIPAL
STORE FUVALUE TO MOLD
STORE TPERIOD TO N
DO WHILE N >= 1
STORE MOLD/(1+INTRATE/100) TO MNEW
STORE MNEW TO MOLD
STORE N-1 TO N
ENDDO
*
STORE FUVALUE - MNEW TO INTAMOUNT
@ 15,17 SAY 'PRINCIPAL ' + STR(MNEW,10,2)
@ 17,17 SAY 'AMOUNT PAID AS INTEREST ' + STR(INTAMOUNT,10,2)
ENDDO
RETURN