2 REM ADJUSTABLE RATE AMORTIZATION SCHEDULE 10 DIM R(50),MP(50),BL(50),AD(50),M$(50),B$(50),DD(50) 15 FOR J=0TO50: AD(J)=0:NEXT:IA=0 25 GOSUB500:GOSUB510:GOSUB520:GOSUB530 30 PRINT:PRINT"WILL THERE BE ADDITIONAL PAYMENTS TO" 35 PRINT"REDUCE THE PRINCIPAL? (Y=YES; N=NO)";:INPUTA$ 50 IFA$="Y"THENGOSUB570:GOTO70 60 IA=0 70 GOSUB300:GOSUB200 80 PRINTCHR$(147):PRINT"USE FUNCTION KEYS TO MODIFY INPUT DATA." 85 PRINT:PRINT"F1[146]...LOAN AMOUNT" 90 PRINT:PRINT"F2[146]...TERM OF LOAN" 95 PRINT:PRINT"F3[146]...NUMBER OF YEARS TO PROJECT" 100 PRINT:PRINT"F4[146]...INTEREST RATES" 105 PRINT:PRINT"F5[146]...ADDITIONAL PAYMENTS" 110 PRINT:PRINT"F6[146]...DISPLAY CURRENT INPUT DATA" 115 PRINT:PRINT"F7[146]...PRINT TABLE" 120 PRINT:PRINT"F8[146]...EXIT" 125 GET A$:IFA$=""THEN125 130 IF A$=CHR$(133)THENGOSUB500:GOTO80 135 IF A$=CHR$(137)THENGOSUB510:GOSUB530:GOTO80 140 IF A$=CHR$(134)THENGOSUB520:GOTO80 145 IF A$=CHR$(138)THENGOSUB530:GOTO80 150 IF A$=CHR$(135)THENGOSUB570:GOTO80 155 IF A$=CHR$(139)THENGOSUB700:GOTO80 160 IF A$=CHR$(136)THENGOSUB300:GOSUB200:GOTO80 165 IF A$=CHR$(140)THEN63000 170 PRINT:PRINT"INCORRECT KEY TYPED. TRY AGAIN":GOTO80 200 JJ=0:JT=10:IFIA>0 THENJT=5 201 C$=" MONTHLY":IFIA=2THENC$=" YEARLY" 202 NM=N:IFJ1>0THENNM=J1 205 FORJ=1TONM:IFJJ>0THEN232 210 PRINTCHR$(147);SPC(12)"ADJUSTABLE RATE" 215 PRINTSPC(9)"AMORTIZATION SCHEDULE" 220 PRINT:PRINTSPC(13)"LOAN AMOUNT: $";BL(0) 225 PRINT:PRINTSPC(13)"TERM:";NY;" YEARS" 230 PRINT:PRINT"YEAR RATE PAYMENT BALANCE" 232 X=MP(J):GOSUB650:M$(J)=X$ 233 X=BL(J):GOSUB650:B$(J)=X$ 235 PRINTJ;TAB(6);R(J);TAB(15);"$";M$(J);TAB(26);"$";B$(J) 245 IFIA>0THENX=AD(J):GOSUB650:PRINTTAB(13);"+ $";X$;C$ 250 JJ=JJ+1:IFJJ0THENGOSUB780 269 PRINTCHR$(147):FORQ=1TO5:PRINT:NEXT 270 PRINT"TOTAL INTEREST PAID OVER THE PROJECTION" 275 PRINT"PERIOD OF";NM;" YEARS"; 280 IFJ2>0THENPRINT" AND";J2;" MONTHS:"; 283 X=TL:GOSUB650 285 PRINT:PRINTTAB(16)"$";X$ 290 GOSUB780 295 RETURN 300 XB=BL(0):X=XB:TL=0:J1=0:J2=0:GOSUB800 302 FORJ=1TON 303 AD(J)=DD(J) 305 IR=R(J)/12:IF(IA=0 OR IA=2)THENX=BL(J-1) 307 GOSUB450:MP(J)=X 310 IFIA=1THEN350 315 IFIA=3THEN410 320 X=X*(1-V^(T-12))/IR:GOSUB650 330 BL(J)=X-AD(J) 335 IFBL(J)<=0THENJ1=J:J=N:BL(J)=0 340 TL=TL+12*MP(J)+BL(J)-BL(J-1) 345 GOTO395 350 FOR JJ=1TO12 355 X=XB*IR:GOSUB650 360 TL=TL+X:XB=XB-MP(J)+X-AD(J) 365 IFXB>0THEN390 370 J1=J:J2=JJ 375 XB=XB+AD(J) 380 X=XB*IR:GOSUB650 385 TL=TL+X:BL(J)=0:JJ=12:J=N 390 NEXTJJ 391 IFJ1=0THENBL(J)=XB:X=XB 395 NEXT 400 RETURN 410 IFMP(J)>AD(J)THENAD(J)=0:GOTO350 415 AD(J)=AD(J)-MP(J):GOTO350 450 V=1/(1+IR) 455 T=(NY-J+1)*12 460 X=X*IR/(1-V^T) 465 GOSUB650:RETURN 500 PRINTCHR$(147):PRINT:PRINT:INPUT"AMOUNT OF LOAN";BL(0):RETURN 510 PRINTCHR$(147):PRINT:PRINT:INPUT"TERM OF LOAN IN YEARS";NY 515 NN=12*NY:RETURN 520 PRINTCHR$(147):PRINT:PRINT:INPUT"NUMBER OF YEARS TO PROJECT";N:RETURN 530 PRINTCHR$(147):PRINT:PRINT"ENTER INTEREST RATES FOR EACH YEAR TO BE" 531 PRINTCHR$(145)"PROJECTED. THE ENTRY OF A NEGATIVE" 532 PRINT"NUMBER WILL MAINTAIN THE LAST RATE FOR" 533 PRINT"THE REST OF THE PROJECTION." 535 IJ=0:FORJ=1TON 540 IFIJ>0THEN555 545 PRINT"YEAR";J;:INPUT R(J) 550 IFR(J)>0THEN560 555 R(J)=R(J-1):IJ=1 560 NEXT:RETURN 570 PRINTCHR$(147):PRINT:PRINT"ADDITIONAL PAYMENTS MAY BE MADE MONTHLY" 571 PRINT"OR YEARLY OR MAY BE CANCELED." 575 PRINT"F1[146]...ADDITIONAL MONTHLY PAYMENTS DURING" 576 PRINTSPC(5)"THE YEAR" 580 PRINT"F3[146]...ADDITIONAL YEARLY PAYMENTS" 583 PRINT"F5[146]...SET A TOTAL MONTHLY PAYMENT" 584 PRINT"F7[146]...NO ADDITIONAL PAYMENTS" 585 GETA$:IFA$=""THEN585 590 IFA$=CHR$(133)THENIA=1:GOTO600 591 IFA$=CHR$(134)THENIA=2:GOTO600 592 IFA$=CHR$(136)THENIA=0:GOTO640 595 IA=3:PRINT:PRINT"ENTER THE TOTAL DESIRED MONTHLY PAYMENT." 596 PRINTCHR$(145)"IF AMOUNT IS LESS THAN THE AMOUNT NEEDED" 597 PRINTCHR$(145)"TO AMORTIZE, THE LARGER AMOUNT WILL BE" 598 PRINT"USED.":GOTO601 600 PRINT:PRINT:PRINT"ENTER ADDITIONAL AMOUNTS TO BE PAID." 601 PRINT"THE ENTRY OF A NEGATIVE NUMBER WILL" 602 PRINT"MAINTAIN THE LAST AMOUNT FOR THE REST OF" 603 PRINTCHR$(145)"THE PROJECTION" 610 IJ=0:FORJ=1TON 615 IFIJ>0THEN630 620 PRINT"YEAR";J;:INPUT AD(J) 625 IFAD(J)>=0THEN635 630 IJ=1:AD(J)=AD(J-1) 635 DD(J)=AD(J):NEXT:RETURN 640 FOR J=1TON:AD(J)=0:NEXT:RETURN 650 XH=INT(X):XL=100*X-100*XH 655 IFXL>=99.5THENXL=O:XH=XH+1:GOTO665 660 IF XL-INT(XL)>=.5THENXL=XL+1 665 XL$=STR$(INT(XL)):LL=LEN(XL$)-1:XL$=RIGHT$(XL$,LL) 670 XH$=STR$(XH) 675 IFXL=0THENXL$="00":GOTO685 680 IFXL<10THENXL$="0"+XL$ 685 X$=XH$+"."+XL$ 690 X=VAL(X$) 695 RETURN 700 PRINTCHR$(147);TAB(91)"CURRENT INPUT DATA" 705 PRINT:PRINT"LOAN AMOUNT: $";BL(0) 710 PRINT:PRINT"TERM: ";NY;" YEARS" 715 PRINT:PRINT"PROJECTED FOR";N;" YEARS" 717 GOSUB780 720 PRINTCHR$(147):PRINT:PRINT:PRINT"INTEREST RATES:" 725 FOR J=1TON:PRINTR(J), 730 IFJ=4*INT(J/4)THEN PRINT 735 NEXT 737 GOSUB780 740 IFIA=0THENPRINT"NO PREPAYMENTS":GOSUB780 741 IFIA=0THENFORJ=1TON:AD(J)=0:DD(J)=0:NEXT:RETURN 745 IFIA=1THENPRINTCHR$(147):PRINT:PRINT 747 IFIA=1THENPRINT"ADDITIONAL MONTHLY PAYMENTS":GOTO755 750 IFIA=2THENPRINTCHR$(147):PRINT:PRINT 752 IFIA=2THENPRINT"ADDITIONAL YEARLY PAYMENTS":GOTO755 753 IFIA=3THENPRINTCHR$(147):PRINT:PRINT:PRINT"TOTAL MONTHLY PAYMENTS" 755 FORJ=1TON 757 PRINTDD(J), 760 IFJ=4*INT(J/4)THEN PRINT 765 NEXT:GOSUB785:RETURN 780 PRINT:PRINT"HIT ANY KEY TO CONTINUE." 785 GETA$:IFA$=""THEN785 790 RETURN 800 PRINTCHR$(147);TAB(206)"CALCULATIONS BEING PERFORMED" 805 RETURN 63000 REM CONNECT BACK TO L.S. 63002 PRINT"[147]LOAD"CHR$(34)"PAYLOAD"CHR$(34)",8":PRINT"RUN" 63004 POKE198,0:POKE631,13:POKE632,13:POKE198,2:END