10 REM FINANCIAL CALCULATIONS V1.0 20 REM CONVERTED FROM THE PUBLIC DOMAIN FOR THE TANDY MODEL 100 30 REM BY PAUL MACDONALD 01/27/85 40 REM ALSO AVAILABLE IN PCS-19 FOR THE EPSON GENEVA 50 CLS:PRINT"FINANCIAL COMPUTATIONS" 60 PRINT"----------------------" 70 PRINT"SELECT ONE OF THE FOLLOWING OPTIONS:" 80 PRINT"------------------------------------" 90 FOR I=1 TO 500:NEXT 100 PRINT" " 110 PRINT"1) COMPOUND INT 7) MON LOAN PYMNT" 120 PRINT"2) YRS OF INT 8) LOAN BAL" 130 PRINT"3) INT RATE 9) # OF SAV PYMNTS" 140 PRINT"4) FUT VALUE A) LOAN AMT" 150 PRINT"5) REQ PAYMENT B) SINKING FUND" 160 PRINT"6) # OF LOAN PYMNTS C) END" 170 BEEP:FOR I=1 TO 10:NEXT:BEEP 180 Y$=INKEY$:IF Y$="" THEN 180 190 IF Y$="A" THEN C=10:GOTO 250 200 IF Y$="B" THEN C=11:GOTO 250 210 IF Y$="C" THEN C=12:GOTO 250 220 C=VAL(Y$) 230 IF C<1 OR C>12 THEN BEEP:GOTO 180 240 BEEP 250 CLS 260 ON C GOTO 270,380,510,620,720,810,910,1010,1170,1280,1390,1490 270 REM: COMPOUND INTEREST 280 CLS 290 PRINT"COMPOUND INTEREST CALCULATIONS":PRINT 300 INPUT" AMOUNT TO BE COMPOUNDED ";A$:A=VAL(A$) 310 INPUT" INTEREST RATE ";I:I=I/100 320 INPUT" NUMBER OF YEARS COMPOUNDED ";T$:T=VAL(T$) 330 INPUT" NUMBER OF PERIODS PER YEAR ";TY$:TY=VAL(TY$):PRINT 340 V=A*(1+I/TY)^(TY*T) 350 PRINT" $"INT(V*100+.5)/100:PRINT 360 GOSUB 1500 370 GOTO 50 380 REM: YEARS OF INTEREST 390 CLS 400 PRINT"YEARS OF INTEREST":PRINT 410 INPUT" AMOUNT TO BE COMPOUNDED ";A$:A=VAL(A$) 420 INPUT" INTEREST RATE ";I:I=I/100 430 INPUT" FINAL DESIRED AMOUNT ";V$:V=VAL(V$) 440 INPUT" NUMBER OF PERIODS PER YEAR ";TY$:TY=VAL(TY$):PRINT 450 T=LOG(V/A)/((LOG(1+I/TY))*TY) 460 PRINT"COMPOUNDED "TY" TIMES PER YEAR," 470 PRINT"WILL REQUIRE THE MONEY TO BE" 480 PRINT"DEPOSITED FOR"INT(T*10+.5)/10" YEARS":PRINT 490 GOSUB 1500 500 GOTO 50 510 REM: INTEREST RATE 520 CLS 530 PRINT"INTEREST RATE CALCULATIONS ":PRINT 540 INPUT" AMOUNT TO BE COMPOUNDED";A$:A=VAL(A$) 550 INPUT" FINAL AMOUNT ";V$:V=VAL(V$) 560 INPUT" NUMBER OF YEARS ";T$:T=VAL(T$) 570 INPUT" NUMBER OF PERIODS PER YEAR ";TY$:TY=VAL(TY$):PRINT 580 I=((V/A)^(1/(TY*T))-1)*TY 590 PRINT"RATE OF RETURN IS"INT(I*1000+.5)/10"% PER YEAR":PRINT 600 GOSUB 1500 610 GOTO 50 620 REM: FUTURE VALUE 630 CLS 640 PRINT"FUTURE VALUE":PRINT 650 INPUT" AMOUNT OF MONTHLY DEPOSIT ";A$:A=VAL(A$) 660 INPUT" INTEREST RATE ";I:I=I/1200 670 INPUT" NUMBER OF YEARS ";T$:T=VAL(T$)*12:PRINT 680 FV=A/I*((1+I)^(T+1)-(1+I)) 690 PRINT"$"INT(FV*100+.5)/100:PRINT 700 GOSUB 1500 710 GOTO 50 720 REM: REQUIRED PAYMENT 730 PRINT"REQUIRED PAYMENT":PRINT 740 INPUT" FINAL DESIRED AMOUNT ";FV$:FV=VAL(FV$) 750 INPUT" INTEREST RATE ";I:I=I/1200 760 INPUT" NUMBER OF YEARS ";T$:T=VAL(T$)*12:PRINT 770 A=(FV*I)/((1+I)^(T+1)-(1+I)) 780 PRINT"$"INT(A*100+.5)/100" MONTHLY PAYMENTS":PRINT 790 GOSUB 1500 800 GOTO 50 810 REM: NUMBER OF PAYMENTS-SAVINGS 820 CLS 830 PRINT"NUMBER OF PAYMENTS - LOAN":PRINT 840 INPUT" AMOUNT TO BE FINANCED ";P$:P=VAL(P$) 850 INPUT" % INTEREST RATE ";I$:I=VAL(I$)/1200 860 INPUT" AFFORDABLE MONTHLY PAYMENT ";A$:A=VAL(A$):PRINT 870 N=LOG(A/(A-P*I))/LOG(1+I) 880 PRINT""INT(N+.5);" MONTHLY PAYMENTS":PRINT 890 GOSUB 1500 900 GOTO 50 910 REM: MONTHLY LOAN PAYMENT 920 CLS 930 PRINT"MONTHLY LOAN PAYMENT ":PRINT 940 INPUT" AMOUNT TO BE FINANCED ";P$:P=VAL(P$) 950 INPUT" % INTEREST RATE ";I:I=I/100 960 INPUT" YEARS OF FINANCING ";N$:N=VAL(N$)*12:PRINT 970 A=P*(I/12)/(1-(1+(I/12))^-N) 980 PRINT"MONTHLY PAYMENT IS $"INT(A*100+.5)/100:PRINT 990 GOSUB 1500 1000 GOTO 50 1010 REM: LOAN BALANCE 1020 CLS 1030 PRINT"LOAN BALANCE CALCULATIONS":PRINT 1040 INPUT" AMOUNT TO BE FINANCED ";P$:P=VAL(P$) 1050 INPUT" % INTEREST RATE ";I$:I=VAL(I$)/1200 1060 INPUT" MONTHLY PAYMENT ";A$:A=VAL(A$) 1070 INPUT" BEGINNING PAYMENT NUMBER ";X$:X=VAL(X$) 1080 INPUT" ENDING PAYMENT NUMBER ";Y$:Y=VAL(Y$):PRINT 1090 B=1/((I+1)^-Y)*((A*(((1+I)^-Y)-1))/I+P) 1100 PRINT"BALANCE AT END OF PAYMENT" 1110 PRINT"NUMBER"Y" -- $"INT(B*100+.5)/100:PRINT 1120 AI=B-(1/((I+1)^-(X-1))*((A*(((1+I)^-(X-1))-1))/I+P))+(Y-X+1)*A 1130 PRINT"ACCUMULATED INTEREST AT THE END OF" 1140 PRINT"PAYMENT NUMBER "Y" -- $"INT(AI*100+.5)/100:PRINT 1150 GOSUB 1500 1160 GOTO 50 1170 REM: NUMBER OF PAYMENTS-LOAN 1180 CLS 1190 PRINT"NUMBER OF PAYMENTS - SAVINGS":PRINT 1200 INPUT" MONTHLY DEPOSIT ";A$:A=VAL(A$) 1210 INPUT" % INTEREST RATE ";I:I=I/1200 1220 INPUT" FINAL AMOUNT ";V$:V=VAL(V$):PRINT 1230 N=(LOG(V*I/A+1+I)/(LOG(1+I))-1) 1240 PRINT"$"V" WILL REQUIRE DEPOSITS OF" 1250 PRINT"$"A" FOR "INT(N)" MONTHS":PRINT 1260 GOSUB 1500 1270 GOTO 50 1280 REM: LOAN AMOUNT 1290 CLS 1300 PRINT"LOAN AMOUNT CALCULATIONS ":PRINT 1310 INPUT" NUMBER OF PAYMENTS DESIRED ";N$:N=VAL(N$) 1320 INPUT" % INTEREST RATE ";I:I=I/1200 1330 INPUT" AMOUNT OF MONTHLY PAYMENT ";A$:A=VAL(A$):PRINT 1340 P=A*(1-(1+I)^-N)/I 1350 PRINT"YOU CAN (THEORETICALLY!) AFFORD TO" 1360 PRINT"BORROW $"INT(P*100+.5)/100:PRINT 1370 GOSUB 1500 1380 GOTO 50 1390 REM: SINKING FUND 1400 CLS 1410 PRINT"SINKING FUND CALCULATIONS ":PRINT 1420 INPUT" AMOUNT TO BE ACCUMULATED ";P 1430 INPUT" % INTEREST RATE ";I:I=I/100 1440 INPUT" YEARS OF ACCUMULATION ";N$:N=VAL(N$):PRINT 1450 A=P*I/(((1+I)^N)-1) 1460 PRINT"YEARLY DEPOSIT IS $"INT(A*100+.5)/100:PRINT 1470 GOSUB 1500 1480 GOTO 50 1490 PRINT:PRINT"PROGRAM TERMINATED ON REQUEST.":END 1500 PRINT" PRESS ANY KEY TO CONTINUE 1510 Y$=INKEY$:IF Y$="" THEN 1510 1520 PRINT"":RETURN