„:¢ "PROGRAM FRAME2":¢*¢ "Originated by F.P.Pettit MA(OXON)"0¢ "Founder of the Computer Teaching Centre"(¢ "University of Oxford"2¢'<¢ "Program submitted by V. J. Day"&F¢ "23 Assarts Lane,Malvern Wells"P¢ "Worcs, WR14 4JR"Z¢:¢"d¢ "Type 'I' for Instructions"nL$~"QMXI1234567890ABCD"xM$~"I1234567890ABCD"‚M8~1:M9~0Œ¢ "What next ";– M8 ‘ 380,320  N9~1 r Ï(L$)!ª“ Ý(K$,1)~Þ(L$,N9,1) s ‘ 190 ´› N9¾¢ú N9 ‘ 290,300,310,4000 N9u4 ‘ 1000,2000,3000,4000,5000,6000,70006 N9u11 ‘ 8000,9000,10000,11000,12000,13000,14000 ‘ 140"¬,,¢ "SELECT YOUR MACRO PLEASE";:” M$:M9~0 6M8~2 @M9~M9t1!J“ M9}Ï(M$) s M9~0:M8~1:‘ 150TK$~Þ(M$,M9,1)^¢ q12,32);M$h¢ qM9t11);"^" r‘ 160 |” K$ †‘ 160„:¢ "USE :-"š¢ " I for Instructions""¤¢ " M to define a new Macro"'®¢ " X to eXecute a current macro"¸¢ " Q to Quit"*¢ " 1 FOR PROCEDURE 'GET PRINCIPAL'".Ì¢ " 2 FOR PROCEDURE 'GET INTEREST RATE'"%Ö¢ " 3 FOR PROCEDURE 'GET TERM'"*ࢠ" 4 FOR PROCEDURE 'GET REPAYMENT'" „‘ 140$è¤ ** PROCEDURE GET PRINCIPAL **ò„)ü¢ q10) "CALCULATING PRINCIPAL":¢:¢:¢"” "INTEREST RATE ";I:I~Ix100/” "TERM IN YEARS, MONTHS ";Y,M:TERM~YtMx12$” "MONTHLY REPAYMENT ";R:R~Rw12 $¢:¢:¢. à ‘ 11008P~Rx(It(Ix((1tI)vTERMu1))) B° 6,2#L¢ "PRINCIPAL AMOUNT ";P:‘ 1120V¢ "OUT OF RANGE":œ à/`¢ @ 0,20,"PRESS ANY KEY TO CONTINUE":A$~ä$ Ï‘ 140#Ф ** PROCEDURE GET INTEREST **Ú„,ä¢ q8) "CALCULATING INTEREST RATE":¢:¢:¢î” "PRINCIPAL ";P0ø” "TERM IN YEARS, MONTHS ";Y,M:TERM~YtMx12%” "MONTHLY REPAYMENT ";R:R~Rw12 TEMP~0.1 ¤ LOOP I~TEMP*¢4 à ‘ 2150>TEMP~RxPu(Ix(1tI)vTERMu1))!H“ Ä(TEMPuI)}.000001 s ‘ 2070 R° 2,3<\¢ "INTEREST RATE ";(Iw100):‘ 2160:¤ SKIP ERROR MESSAGEf¢ "OUT OF RANGE":œ à/p¢ @ 0,20,"PRESS ANY KEY TO CONTINUE":A$~ä$ · ‘ 140¸ ¤ ** PROCEDURE GET TERM ** „$Ì ¢ q12) "CALCULATING TERM":¢:¢:¢Ö ”"PRINCIPAL ";P!à ”"INTEREST RATE ";I:I~Ix100$ê ”"MONTHLY REPAYMENT ";R:R~Rw12 ô ¢:¢:¢þ à ‘ 3110& TERM~Ð(PwIx(RuPwI)t1)xÐ(1tI)t1x24+ Y~Î(TERM):M~Î((TERMuÎ(TERM))w12):° 2,0C ¢ "TERM IS "Y" YEARS, "M" MONTHS":‘ 3120:¤ SKIP ERROR MESSAGE& ¢ "OUT OF RANGE":œ à/0 ¢ @ 0,20,"PRESS ANY KEY TO CONTINUE":A$~ä$ Ÿ‘ 140$ ¤ ** PROCEDURE GET REPAYMENT **ª„/´¢ q6)"CALCULATING MONTHLY REPAYMENT":¢:¢:¢¾”"PRINCIPAL ";P!È”"INTEREST RATE ";I:I~Ix100.Ò”"TERM IN YEARS,MONTHS ";Y,M:TERM~YtMx12 Ü¢:¢:¢æ à ‘ 4110"ðR~Pw(It(Ix((1tI)vTERMu1)))x12 ú° 4,29¢"MONTHLY PAYMENT IS "R:‘ 4120:¤ SKIP ERROR MESSAGE¢"OUT OF RANGE":œ à0¢ @ 0,20,"PRESS ANY KEY TO CONTINUE";:A$~ä$ ‡‘ 140ˆ¢ "PROCEDURE 5" o‘ 140p¢ "PROCEDURE 6" W‘ 140X¢ "PROCEDURE 7" ?‘ 140@¢ "PROCEDURE 8" '#‘ 140(#¢ "PROCEDURE 9" '‘ 140'¢ "PROCEDURE 0" ÷*‘ 140ø*¢ "PROCEDURE A" ß.‘ 140à.¢ "PROCEDURE B" Ç2‘ 140È2¢ "PROCEDURE C" ¯6‘ 140°6¢ "PROCEDURE D" —:‘ 1409˜:¤ SET COMMON SUBROUTINES HERE GLOBAL!€>¤ SET DEFINED FUNCTIONS HEREhB¤ SET DATA STATEMENTS HERE NŽ