MediaWiki:Sitenotice:
2025-12-29: I have restored the wiki to a backup from the end of November. Starting in September 2025, accesses went form the 800MB-1.2GB range per month to 26GB in September, 42GB in October, and 70GB in November with most accesses originating from China. As soon as I realized what was causing all the access problems in November, I shut it down (it had reached 36GB by then) behind a password/login screen. The database had gotten corrupted, and I tried a restore from just before the spike in access but that didn't work. Thus, end of November. I still have the other daily backups so if there were any important additions in December, let me know and maybe they can be recovered. - Allen H.
AMORTIZE: Difference between revisions
Jump to navigation
Jump to search
Luis46coco (talk | contribs) Created page with "100 TP=0: TI=0: T$=" 110 CLS: PRINT@5,"AMORTIZATION SCHEDULE" 120 PRINT@64,"ENTER PRINCIPAL";: INPUT P$ 130 IF (VAL(P$)>0) AND (VAL(P$)<10000000) THEN P=VAL(P$): GOTO150 140 P..." |
Luis46coco (talk | contribs) mNo edit summary |
||
| Line 1: | Line 1: | ||
100 TP=0: TI=0: T$=" | 100 TP=0: TI=0: T$=" | ||
110 CLS: PRINT@5,"AMORTIZATION SCHEDULE" | 110 CLS: PRINT@5,"AMORTIZATION SCHEDULE" | ||
120 PRINT@64,"ENTER PRINCIPAL";: INPUT P$ | 120 PRINT@64,"ENTER PRINCIPAL";: INPUT P$ | ||
130 IF (VAL(P$)>0) AND (VAL(P$)<10000000) THEN P=VAL(P$): GOTO150 | 130 IF (VAL(P$)>0) AND (VAL(P$)<10000000) THEN P=VAL(P$): GOTO150 | ||
140 PRINT@80,": GOTO120 | 140 PRINT@80,": GOTO120 | ||
150 PRINT@97,"INTEREST RATE (% /YR)"; : INPUT I$ | 150 PRINT@97,"INTEREST RATE (% /YR)"; : INPUT I$ | ||
160 IF (VAL(I$)>O) AND (VAL(I$)<91) THEN I=VAL(I$)/100: GOTO180 | 160 IF (VAL(I$)>O) AND (VAL(I$)<91) THEN I=VAL(I$)/100: GOTO180 | ||
170 PRINT@117,"": GOTO150 | 170 PRINT@117,"": GOTO150 | ||
180 PRINT@129,"NUMBER OF MONTHS";: INPUT N$ | 180 PRINT@129,"NUMBER OF MONTHS";: INPUT N$ | ||
190 IF (VAL(N$)>0) AND (VAL(N$)<500) THEN N=VAL(N$): GOTO210 | 190 IF (VAL(N$)>0) AND (VAL(N$)<500) THEN N=VAL(N$): GOTO210 | ||
200 PRINT@147,": GOTO180 | 200 PRINT@147,": GOTO180 | ||
210 PRINT@161,"MONTHLY PAYMENT";: INPUT R$ | 210 PRINT@161,"MONTHLY PAYMENT";: INPUT R$ | ||
220 IF (VAL(R$)>0) AND (VAL(R$)<10000) THEN R=VAL(R$): GOTO240 | 220 IF (VAL(R$)>0) AND (VAL(R$)<10000) THEN R=VAL(R$): GOTO240 | ||
230 PRINT@178,": GOTO210 | 230 PRINT@178,": GOTO210 | ||
240 PRINT@193,"BALLOON PAYMENT";: INPUT B$ | 240 PRINT@193,"BALLOON PAYMENT";: INPUT B$ | ||
250 IF (VAL(B$)>=0) AND (VAL(B$)<1000000) THEN B=VAL(B$): GOTO270 | 250 IF (VAL(B$)>=0) AND (VAL(B$)<1000000) THEN B=VAL(B$): GOTO270 | ||
260 PRINT@210,"": GOTO240 | 260 PRINT@210,"": GOTO240 | ||
270 PRINT@225,"TO PRINTER (Y OR N)";: INPUT PR$ | 270 PRINT@225,"TO PRINTER (Y OR N)";: INPUT PR$ | ||
280 IF NOT (PR$="Y" OR PR$="N") THEN PRINT@245,"": GOTO270 | 280 IF NOT (PR$="Y" OR PR$="N") THEN PRINT@245,"": GOTO270 | ||
290 GOSUB590 | 290 GOSUB590 | ||
300 IF PR$<>"Y" THEN 370 | 300 IF PR$<>"Y" THEN 370 | ||
320 LPRINT TAB(5)"AMORTIZATION SCHEDULE" | 320 LPRINT TAB(5)"AMORTIZATION SCHEDULE" | ||
340 LPRINT TAB(8)"TO TO" | 340 LPRINT TAB(8)"TO TO" | ||
360 LPRINT "MONTH PRINC. INTER. BALANCE" | 360 LPRINT "MONTH PRINC. INTER. BALANCE" | ||
370 FOR T=1 TO N | 370 FOR T=1 TO N | ||
380 WI=P*(I/12): TI=TI+WI | 380 WI=P*(I/12): TI=TI+WI | ||
390 WP=R-WI: TP=TP+WP: P=P+WI-R | 390 WP=R-WI: TP=TP+WP: P=P+WI-R | ||
400 N$=STR$(T): L=LEN(N$) | 400 N$=STR$(T): L=LEN(N$) | ||
410 PRINT@P1+4-L,N$; | 410 PRINT@P1+4-L,N$; | ||
420 IF PR$="Y" THEN LPRINT TAB(4-L)N$; | 420 IF PR$="Y" THEN LPRINT TAB(4-L)N$; | ||
430 C=INT(WP*100): P2=10: GOSUB630 | 430 C=INT(WP*100): P2=10: GOSUB630 | ||
440 C=INT(WI*100): P2=19: GOSUB630 | 440 C=INT(WI*100): P2=19: GOSUB630 | ||
450 C=INT(P*100): P2=29: GOSUB630 | 450 C=INT(P*100): P2=29: GOSUB630 | ||
460 IF P1<416 THEN P1=P1+32: GOTO510 | 460 IF P1<416 THEN P1=P1+32: GOTO510 | ||
470 IF T=N THEN 510 | 470 IF T=N THEN 510 | ||
480 PRINT@448,"PRESS ANY KEY TO CONTINUE";: B$=INKEY$ | 480 PRINT@448,"PRESS ANY KEY TO CONTINUE";: B$=INKEY$ | ||
490 IF B$="" THEN 480 | 490 IF B$="" THEN 480 | ||
500 GOSUB590 | 500 GOSUB590 | ||
510 NEXT T | 510 NEXT T | ||
520 PRINT@P1,"TOTL"; | 520 PRINT@P1,"TOTL"; | ||
530 IF PR$="Y" THEN LPRINT "TOTL"; | 530 IF PR$="Y" THEN LPRINT "TOTL"; | ||
540 C=INT(TP*100): P2=10: GOSUB630 | 540 C=INT(TP*100): P2=10: GOSUB630 | ||
550 C=INT(TI*100): P2=19: T$="Y": GOSUB630 | 550 C=INT(TI*100): P2=19: T$="Y": GOSUB630 | ||
560 PRINT@460,"PRESS R TO RESTART";: B$=INKEY$ | 560 PRINT@460,"PRESS R TO RESTART";: B$=INKEY$ | ||
570 IF B$="R" THEN 100 | 570 IF B$="R" THEN 100 | ||
580 GOTO560 | 580 GOTO560 | ||
590 CLS: PRINT@5,"AMORTIZATION SCHEDULE" | 590 CLS: PRINT@5,"AMORTIZATION SCHEDULE" | ||
600 PRINT@40,"TO": PRINT@49,"TO" | 600 PRINT@40,"TO": PRINT@49,"TO" | ||
610 PRINT@64,"MONTH PRINC. INTER. BALANCE" | 610 PRINT@64,"MONTH PRINC. INTER. BALANCE" | ||
620 P1=96: RETURN | 620 P1=96: RETURN | ||
630 C$=STR$(C): L=LEN(C$) | 630 C$=STR$(C): L=LEN(C$) | ||
640 PRINT@P1+P2-(L-2),LEFT$(C$,L-2)+"."+RIGHT$(C$,2); | 640 PRINT@P1+P2-(L-2),LEFT$(C$,L-2)+"."+RIGHT$(C$,2); | ||
650 IF PR$<>"Y" THEN 710 | 650 IF PR$<>"Y" THEN 710 | ||
660 IF (P2<>29) AND (T$<>"Y") THEN 700 | 660 IF (P2<>29) AND (T$<>"Y") THEN 700 | ||
660 LPRINT TAB(P2-(L-2))LEFT$(CS,L-2)+"."+RIGHT$(C$,2): GOTO710 | 660 LPRINT TAB(P2-(L-2))LEFT$(CS,L-2)+"."+RIGHT$(C$,2): GOTO710 | ||
700 LPRINT TAB(P2-(L-2))LEFT$(C$,L-2)+"."+RIGHT$(C$,2); | 700 LPRINT TAB(P2-(L-2))LEFT$(C$,L-2)+"."+RIGHT$(C$,2); | ||
710 RETURN | 710 RETURN | ||
Revision as of 02:30, 25 March 2013
100 TP=0: TI=0: T$=" 110 CLS: PRINT@5,"AMORTIZATION SCHEDULE" 120 PRINT@64,"ENTER PRINCIPAL";: INPUT P$ 130 IF (VAL(P$)>0) AND (VAL(P$)<10000000) THEN P=VAL(P$): GOTO150 140 PRINT@80,": GOTO120 150 PRINT@97,"INTEREST RATE (% /YR)"; : INPUT I$ 160 IF (VAL(I$)>O) AND (VAL(I$)<91) THEN I=VAL(I$)/100: GOTO180 170 PRINT@117,"": GOTO150 180 PRINT@129,"NUMBER OF MONTHS";: INPUT N$ 190 IF (VAL(N$)>0) AND (VAL(N$)<500) THEN N=VAL(N$): GOTO210 200 PRINT@147,": GOTO180 210 PRINT@161,"MONTHLY PAYMENT";: INPUT R$ 220 IF (VAL(R$)>0) AND (VAL(R$)<10000) THEN R=VAL(R$): GOTO240 230 PRINT@178,": GOTO210 240 PRINT@193,"BALLOON PAYMENT";: INPUT B$ 250 IF (VAL(B$)>=0) AND (VAL(B$)<1000000) THEN B=VAL(B$): GOTO270 260 PRINT@210,"": GOTO240 270 PRINT@225,"TO PRINTER (Y OR N)";: INPUT PR$ 280 IF NOT (PR$="Y" OR PR$="N") THEN PRINT@245,"": GOTO270 290 GOSUB590 300 IF PR$<>"Y" THEN 370 320 LPRINT TAB(5)"AMORTIZATION SCHEDULE" 340 LPRINT TAB(8)"TO TO" 360 LPRINT "MONTH PRINC. INTER. BALANCE" 370 FOR T=1 TO N 380 WI=P*(I/12): TI=TI+WI 390 WP=R-WI: TP=TP+WP: P=P+WI-R 400 N$=STR$(T): L=LEN(N$) 410 PRINT@P1+4-L,N$; 420 IF PR$="Y" THEN LPRINT TAB(4-L)N$; 430 C=INT(WP*100): P2=10: GOSUB630 440 C=INT(WI*100): P2=19: GOSUB630 450 C=INT(P*100): P2=29: GOSUB630 460 IF P1<416 THEN P1=P1+32: GOTO510 470 IF T=N THEN 510 480 PRINT@448,"PRESS ANY KEY TO CONTINUE";: B$=INKEY$ 490 IF B$="" THEN 480 500 GOSUB590 510 NEXT T 520 PRINT@P1,"TOTL"; 530 IF PR$="Y" THEN LPRINT "TOTL"; 540 C=INT(TP*100): P2=10: GOSUB630 550 C=INT(TI*100): P2=19: T$="Y": GOSUB630 560 PRINT@460,"PRESS R TO RESTART";: B$=INKEY$ 570 IF B$="R" THEN 100 580 GOTO560 590 CLS: PRINT@5,"AMORTIZATION SCHEDULE" 600 PRINT@40,"TO": PRINT@49,"TO" 610 PRINT@64,"MONTH PRINC. INTER. BALANCE" 620 P1=96: RETURN 630 C$=STR$(C): L=LEN(C$) 640 PRINT@P1+P2-(L-2),LEFT$(C$,L-2)+"."+RIGHT$(C$,2); 650 IF PR$<>"Y" THEN 710 660 IF (P2<>29) AND (T$<>"Y") THEN 700 660 LPRINT TAB(P2-(L-2))LEFT$(CS,L-2)+"."+RIGHT$(C$,2): GOTO710 700 LPRINT TAB(P2-(L-2))LEFT$(C$,L-2)+"."+RIGHT$(C$,2); 710 RETURN