• C

Amortization Schedule

Write a C program that will print an amortization schedule. Your program should be interactive by requesting from the user: amount to borrow, interest rate, # of months to repay. This data should be plugged into this formula to compute monthly payment: MP=P/((1-(1+I/12)to the -M)/(I/12))

Next you should print out this information followed by a header. Then your program should go into a loop to print the schedule. The limit of the loop will be the # of months to repay. Mounthly interest should be computed with this formula: MON INT=P* (I/12)

When your schedule is finished, print out the total amount of interest paid. Consider what to do if the last payment must be changed plus or minus to make the balance go to zero.
Document each line of code
cstone021897Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

pc012197Commented:
I suggest you sit down and do your homework alone...

0
mbecker011597Commented:
agreed to pc.
0
tallenCommented:
Looks like a homework problem to me.  If you can't handle this one, maybe you should change majors.
0
emmonsCommented:
Well, I did it. 37 lines of code. What is your teachers email address so that I can send it in.
0
emmonsCommented:
void main()
{
        double MonthlyPayment; // monthly payments
        double Principal = (double)100000; // amount borrowed
        double M = (double)360; // duration of loan in months
        double AnnualInterestRate = (double)8; // annual interest rate
        double MonthlyInterestRate;     // Monthly interest rate
        double MI; // monthly interest paid
        double MonthsInAYear = (double)12; // number of months in a year
        double One = (double)1; // the multiplicative identity
        double dx, dp; // intermediate calculations
        int i; // loop counter
                   
        printf( "amount to borrow: "); scanf( "%f", &Principal);
        printf( "interest rate: "); scanf( "%f", &AnnualInterestRate);
        printf( "total months: "); scanf( "%f", &M);
       
        printf( "Borrowing $%.2f @ a rate of %.2f%% for %.0f months\n", Principal, AnnualInterestRate, M);

        MonthlyInterestRate = AnnualInterestRate / (MonthsInAYear * 100);
        dx = One + MonthlyInterestRate;
       
        for( dp = 1, i = 0; i < M; i++) dp = dp * dx;
       
        MonthlyPayment = Principal * MonthlyInterestRate / ( One - (One/dp));
        printf( "Means a monthly payment of $%.2f\n", MonthlyPayment);
       
        for( i=0; i < M; i++) {
               
                printf( "Principal $%.2f  Interest $%.2f   Balance $%.2f\n",
                        MonthlyPayment - (Principal * MonthlyInterestRate),
                        Principal * MonthlyInterestRate,
                        Principal - (MonthlyPayment - (Principal * MonthlyInterestRate)));
                Principal = Principal - (MonthlyPayment - (Principal * MonthlyInterestRate));
//                if( Principal <= MonthlyPayment) break;
        }
        printf( "Principal $%.2f  Interest $%.2f   Balance $0.00\n",
                MonthlyPayment - (Principal * MonthlyInterestRate),
                Principal * MonthlyInterestRate);

}


0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C

From novice to tech pro — start learning today.