Re: compound interest

• To: mathgroup at christensen.cybernetics.net
• Subject: [mg1758] Re: compound interest
• From: gaylord at ux1.cso.uiuc.edu (richard j. gaylord)
• Date: Wed, 26 Jul 1995 00:49:10 -0400
• Organization: university of illinois

```In article <DC1EMK.4s4 at wri.com>, robert_nachbar at Merck.Com (Robert Nachbar)
wrote:

> does anybody have a package for computing compound interest, loan
> amortizations, etc.? i've already checked mathsource to no avail.

here's an interactive progam that lets you determine when you're going to
needs.

-richard-

=============

mortgage :=
(monthset =
Thread[{January, February, March, April, May, June, July, August,
September, October, November, December} -> Range[12]];
startyear  = Input["Enter the year the loan is made:"];
startmonthname  = Input["Enter the month the loan is made
(January, February, March, April, May, June, July, August,
September, October, November, December):"];
startmonth = startmonthname /. monthset;
Print["The loan starts in ", startmonthname,
" ", startyear];
nyears   = Input["Enter the term of the loan (years):"];
Print["The loan is for ", nyears " years"];
npy       = Input["Enter the number of payments per year:"];
Print["There are ", npy, " payments per year"];
interest = Input["Enter the annual interest rate (percent):"]/100;
Print["The annual interest rate is ", interest 100, " %"];
principal= Input["                     Enter the principal: "];
Print["The principal is \$", principal];
n   = N[npy] nyears;
r        = 1. + interest / N[npy];
payment  = principal r^n (1 - r) / (1 - r^n);
Print[];
Print["The monthly payment is \$", payment];
extrapayment = Input["How much extra do you want to
pay towards the principal each month?"];
Print["The extra payment is \$", extrapayment];
Print["The total monthly payment is \$", payment + extrapayment ];
Print["The total amount paid over the life of the loan is \$",
n payment];
i = 1;
newprin = principal;
While[newprin > 0,
moprinred = payment - ((newprin interest)/12);
newprin = newprin - moprinred - extrapayment;
If[Mod[i, 12] == 0,
Print["in ", startmonth /. Map[Reverse, monthset],
" of ", startyear + (i/12),
" , the remaining principal will be \$",
newprin]
];
i++
];
Print["in ",
(startmonth+Mod[i, 12]-1)/.Map[Reverse, monthset], " of ",
startyear + Floor[i/12], " the mortgage will be paid
off"]                                            )

--
"if you're not programming functionally, then you're programming dysfunctionally"

```

• Prev by Date: Re: Fourier-Bessel Transform
• Next by Date: Re: "?" and "??"
• Previous by thread: compound interest
• Next by thread: 3d Polynomials.