8990  REM ***  HP BASIC PROGRAM LIBRARY ******************************
8991  REM
8992  REM      LOAN:  LOAN AMORTIZATION
8993  REM
8994  REM      36226  REV A
8995  REM
8996  REM ***  CONTRIBUTED PROGRAM ***********************************
8997  REM
9020  REM  PROGRAM ASKS FOR STARTING MONTH NUMBER, MAXIMUM PAYMENT
9030  REM  THE PAYMENT EVERY MONTH AND GIVES BACK THE INTEREST, THE AC-
9040  REM  CUMULATED INTEREST, THE AMOUNT OF THE PAYMENT THAT WENT TO 
9050  REM  THE PRINCIPAL, AN ACCUMULATION OF PAYMENTS TO THE PRINCIPAL
9060  REM  MAINING BALANCE.  AT THE END OF EACH YEAR A SIMILAR YEARLY
9070  REM  REPORT IS GENERATED.  THE LAST PAYMENT WILL BE MADE BY THE
9080  REM  COMPUTER WHEN THE REMAINING PRINCIPAL IS LESS THAN THE
9090  REM  MAXIMUM ALLOWABLE MONTHLY PAYMENT
9100  PRINT "INPUT STARTING MONTH # (FEB=2)";
9110  INPUT N1
9120  PRINT "MAXIMUM ALLOWABLE PAYMENT/MONTH";
9130  INPUT M
9140  Y=Z=1
9150  I1=N=P3=0
9160  PRINT "AFTER THE FIRST ? INPUT PRINCIPAL AND INTEREST RATE"
9170  PRINT "AFTER EACH SUCCEEDING ? INPUT THE MONTHLY PAYMENT"'10
9180  PRINT "INTEREST","CUM INTEREST","PAY TO PRINC","CUM PRINC PAY","BALANCE"'10
9190  INPUT P,R
9200  P6=I6=X6=0
9210  INPUT X
9220  IF X<0 OR X>M THEN 9210
9230  X6=X6+X
9240  I=P*R/12
9250  I6=I6+I
9260  I1=I1+I
9270  N1=N1+1
9280  N=N+1
9290  IF  NOT Z OR X THEN 9320
9300  P2=0
9310  GOTO 9370
9320  P2=X-I
9330  IF P2 >= 0 THEN 9370
9340  P=P+ABS(P2)
9350  P2=0
9360  GOTO 9300
9370  P3=P3+P2
9380  P6=P6+P2
9390  IF X THEN 9420
9400  P=P+I
9410  GOTO 9430
9420  P=P-P2
9430  PRINT I,I1,P2,P3,P
9440  IF Z=0 THEN 9500
9450  IF N1>12 THEN 9500
9460  IF P>M THEN 9210
9470  X=P+P*R/12
9480  Z=0
9490  GOTO 9230
9500  PRINT '10"YEAR","TOT PAY MADE","YEAR CUM INT","YEAR PRINC PAY","BALANCE"
9510  PRINT Y,X6,I6,P6,P,'10
9520  Y=Y+1
9530  N1=1
9540  IF Z=0 THEN 9560
9550  GOTO 9200
9560  PRINT N"PAYMENTS WERE MADE"
9570  END 
