Evaluates the cumulative interest paid between two periods.
#include <imsl.h>
float
imsl_f_cumulative_interest (float rate, int n_periods,
float present_value, int start, int end, int when)
The type double function is imsl_d_cumulative_interest.
float rate
(Input)
Interest rate.
int n_periods
(Input)
Total number of payment periods. n_periods cannot be
less than or equal
to 0.
float
present_value (Input)
The current value of a stream of
future payments, after discounting the payments using some interest rate.
int start
(Input)
Starting period in the calculation. start cannot be less
than 1; or greater than end.
int end
(Input)
Ending period in the calculation.
int when
(Input)
Time in each period when the payment is made, either IMSL_AT_END_OF_PERIOD
or IMSL_AT_BEGINNING_OF_PERIOD.
For
a more detailed discussion on when see the Usage Notes section of
this chapter.
The cumulative interest paid between the first period and the last period. If no result can be computed, NaN is returned.
Function imsl_f_cumulative_interest evaluates the cumulative interest paid between the first period and the last period.
It is computed using the following:

where interesti is computed from imsl_f_interest_payment for the ith period.
In this example, imsl_f_cumulative_interest computes the total interest paid for the first year of a 30-year $200,000 loan with an annual interest rate of 7.25%. The payment is made at the end of each month.
#include <stdio.h>
#include "imsl.h"
void main()
{
float rate = 0.0725 / 12;
int n_periods = 12 * 30;
float present_value = 200000;
int start = 1;
int end = 12;
float total;
total = imsl_f_cumulative_interest (rate, n_periods, present_value,
start, end, IMSL_AT_END_OF_PERIOD);
printf ("First year interest = $%.2f.\n", total);
}
First year interest = $-14436.52.
|
Visual Numerics, Inc. PHONE: 713.784.3131 FAX:713.781.9260 |