Hi all, I'm new to C++ & taking my first class in programming.

The program ask the user to enter the loan amount, number of years, and interest rate, and then displays the amortization schedule for the loan.The monthly payment for a given loan pays the principal and the interest. The monthly interest is computed by multiplying the monthly interest rate and the balance (the remaining principal). The principal paid for the month is therefore the monthly payment minus the monthly interest.

I have a problem with cout of this program.

first :
1. INTEREST, BALANCE and principal become negative.
2.what does it mean with"posible use of 'balance'

can anyone solve my coding.

#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <iomanip.h>

void main()
double AnualInterestRate, monthlyInterestRate, loan_amount, monthlyPayment, total_payment, interest, principal, balance;
int num_year;

cout << "Loan Amount: ";
cin >> loan_amount;

cout << "Number of Years: " ;
cin >> num_year;

cout << "Annual Interest Rate: ";
cin >> AnualInterestRate;


monthlyInterestRate = AnualInterestRate / 12;

monthlyPayment = loan_amount * monthlyInterestRate / (1 - 1 / pow(1 + monthlyInterestRate, num_year * 12));

total_payment = monthlyPayment * (num_year * 12);

cout << "\nCalculation... " << endl;

cout << "\nMonthly Payment: " << monthlyPayment << endl;
cout << "Total Payment: " << total_payment << endl;

cout <<setw(0) << "\nPayment#" << setw(14) << "Interest" << setw(15) << "Principal" << setw(20) << "Balance" <<endl;

for (int i = 1; i <= num_year * 12; i++)
interest = monthlyInterestRate * balance;
principal = monthlyPayment - interest;
balance = balance - principal;

cout << setw(0)<< i << setw(20) << interest << setw(14) << principal << setw(20) << balance << endl;


6 Years
Discussion Span
Last Post by Ancient Dragon

>>void main()
It's int main() -- never void main

>>1. INTEREST, BALANCE and principal become negative
Its very rare that the amount of the final payment will be exactly the same as it was during the life of the loan. So you have to adjust the final payment so that the balance is 0.

The for loop needs to count one month less than num_year*12

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.