/* */ arg principal interest years '(' debug if debug ^= '' then trace 'i' if principal = '' then principal = 175000 if interest = '' then interest = 5.00 if years = '' then years = 30 'QPAYMENT' principal interest years '(STACK' pull payment interest = interest/100 month = 'JAN' /* When you got the loan. */ year = 1994 months = 'JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC JAN' payment_number = 0 interest_for_year = 0 years_this_page = 0 Call Do_A_Year payment interest = 6 'QPAYMENT' principal interest years-1 '(STACK' pull payment interest = interest/100 Call Do_A_Year payment Exit Do_A_Year: Arg monthly_payment Do 12 payment_number = payment_number + 1 If payment_number = 1 | month = 'JAN' & years_this_page = 4 Then Do Say '1PAYMENT INTEREST PRINCIPAL NEW YEAR''S' Say ' NUMBER MONTH YEAR PAYMENT PAYMENT PRINCIPAL INTEREST' Say ' ------- ----- ---- -------- --------- --------- --------' years_this_page = 0 End i = principal * interest / 12 ii = format(i,,2) If ii - i = .005 Then interest_payment = ii - .01 Else interest_payment = ii interest_for_year = interest_for_year + interest_payment If monthly_payment > interest_payment + principal Then principal_payment = principal Else principal_payment = monthly_payment - interest_payment principal = principal - principal_payment If month = 'JAN' | month = 'DEC' | payment_number = 1 , Then pm = month ' ' year Else pm = month ' ' line = right(payment_number,5) ' ' pm right(interest_payment,9) , right(principal_payment,10) right(principal,10) If month = 'DEC' | principal = 0 Then Do Say line right(interest_for_year,9) Say '' interest_for_year = 0 End Else Say line right(interest_for_year,9) month = word(months,find(months,month)+1) If month = 'JAN' Then Do year = year + 1 years_this_page = years_this_page + 1 End If principal = 0 Then Exit End Return