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