#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main( ) {
double loanAmount, annualRate, monthlyRate, monthlyPayment, totalPaid, interestPaid;
int numPayments;
// Ask user for input
cout << "Enter the loan amount: $" ;
cin >> loanAmount;
cout << "Enter the annual interest rate (percent, e.g., 12 for 12%): " ;
cin >> annualRate;
cout << "Enter the number of monthly payments: " ;
cin >> numPayments;
// Calculate monthly interest rate (decimal)
monthlyRate = annualRate / 12.0 / 100.0 ;
// Calculate monthly payment using formula
monthlyPayment = ( loanAmount * monthlyRate) / ( 1 - pow ( 1 + monthlyRate, - numPayments) ) ;
// Calculate total amount paid and interest
totalPaid = monthlyPayment * numPayments;
interestPaid = totalPaid - loanAmount;
// Display report
cout << fixed << setprecision( 2 ) ;
cout << "\n --- Loan Payment Report ---\n " ;
cout << "Loan Amount: $" << loanAmount << endl;
cout << "Monthly Interest Rate: " << monthlyRate * 100 << "%" << endl;
cout << "Number of Payments: " << numPayments << endl;
cout << "Monthly Payment: $" << monthlyPayment << endl;
cout << "Amount Paid Back: $" << totalPaid << endl;
cout << "Interest Paid: $" << interestPaid << endl;
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGNtYXRoPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CiAgICBkb3VibGUgbG9hbkFtb3VudCwgYW5udWFsUmF0ZSwgbW9udGhseVJhdGUsIG1vbnRobHlQYXltZW50LCB0b3RhbFBhaWQsIGludGVyZXN0UGFpZDsKICAgIGludCBudW1QYXltZW50czsKCiAgICAvLyBBc2sgdXNlciBmb3IgaW5wdXQKICAgIGNvdXQgPDwgIkVudGVyIHRoZSBsb2FuIGFtb3VudDogJCI7CiAgICBjaW4gPj4gbG9hbkFtb3VudDsKCiAgICBjb3V0IDw8ICJFbnRlciB0aGUgYW5udWFsIGludGVyZXN0IHJhdGUgKHBlcmNlbnQsIGUuZy4sIDEyIGZvciAxMiUpOiAiOwogICAgY2luID4+IGFubnVhbFJhdGU7CgogICAgY291dCA8PCAiRW50ZXIgdGhlIG51bWJlciBvZiBtb250aGx5IHBheW1lbnRzOiAiOwogICAgY2luID4+IG51bVBheW1lbnRzOwoKICAgIC8vIENhbGN1bGF0ZSBtb250aGx5IGludGVyZXN0IHJhdGUgKGRlY2ltYWwpCiAgICBtb250aGx5UmF0ZSA9IGFubnVhbFJhdGUgLyAxMi4wIC8gMTAwLjA7CgogICAgLy8gQ2FsY3VsYXRlIG1vbnRobHkgcGF5bWVudCB1c2luZyBmb3JtdWxhCiAgICBtb250aGx5UGF5bWVudCA9IChsb2FuQW1vdW50ICogbW9udGhseVJhdGUpIC8gKDEgLSBwb3coMSArIG1vbnRobHlSYXRlLCAtbnVtUGF5bWVudHMpKTsKCiAgICAvLyBDYWxjdWxhdGUgdG90YWwgYW1vdW50IHBhaWQgYW5kIGludGVyZXN0CiAgICB0b3RhbFBhaWQgPSBtb250aGx5UGF5bWVudCAqIG51bVBheW1lbnRzOwogICAgaW50ZXJlc3RQYWlkID0gdG90YWxQYWlkIC0gbG9hbkFtb3VudDsKCiAgICAvLyBEaXNwbGF5IHJlcG9ydAogICAgY291dCA8PCBmaXhlZCA8PCBzZXRwcmVjaXNpb24oMik7CiAgICBjb3V0IDw8ICJcbi0tLSBMb2FuIFBheW1lbnQgUmVwb3J0IC0tLVxuIjsKICAgIGNvdXQgPDwgIkxvYW4gQW1vdW50OiAkIiA8PCBsb2FuQW1vdW50IDw8IGVuZGw7CiAgICBjb3V0IDw8ICJNb250aGx5IEludGVyZXN0IFJhdGU6ICIgPDwgbW9udGhseVJhdGUgKiAxMDAgPDwgIiUiIDw8IGVuZGw7CiAgICBjb3V0IDw8ICJOdW1iZXIgb2YgUGF5bWVudHM6ICIgPDwgbnVtUGF5bWVudHMgPDwgZW5kbDsKICAgIGNvdXQgPDwgIk1vbnRobHkgUGF5bWVudDogJCIgPDwgbW9udGhseVBheW1lbnQgPDwgZW5kbDsKICAgIGNvdXQgPDwgIkFtb3VudCBQYWlkIEJhY2s6ICQiIDw8IHRvdGFsUGFpZCA8PCBlbmRsOwogICAgY291dCA8PCAiSW50ZXJlc3QgUGFpZDogJCIgPDwgaW50ZXJlc3RQYWlkIDw8IGVuZGw7CgogICAgcmV0dXJuIDA7Cn0K