#include <iostream>
using namespace std;
double Payoff (double loan, double payment, double interest){
double interestAmt, monthlyInterest;
int numMonths, totalMonths, i;
totalMonths = loan/payment;
numMonths = 0;
cout << "Interest rate per month is ";
monthlyInterest = ((loan * interest) / 12);
cout << monthlyInterest << endl;
monthlyInterest = loan * monthlyInterest;
if (loan > payment){
for (numMonths; numMonths < totalMonths; ++numMonths) {
cout << "Mon: " << numMonths << " ";
cout << "Bal: " << loan << " ";
cout << "Int: " << monthlyInterest << " ";
cout << "Pay: " << payment << endl;
loan = loan - payment + monthlyInterest;
monthlyInterest = ((loan * interest) / 12);
}
}
return numMonths;
}
int main() {
double loan, payment, interest;
cout.setf(ios::fixed, ios::floatfield);
cout.precision(2);
cout << "Please enter loan amount: ";
cin >> loan;
cout << loan << endl;
cout << "Please enter monthly payment: ";
cin >> payment;
cout << payment << endl;
cout << "Please enter annual interest: ";
cin >> interest;
cout << interest << endl;
int numMonths = Payoff(loan, payment, interest);
if (numMonths != -1) {
cout << "It will take " << numMonths;
cout << " months to pay off the loan." << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKZG91YmxlIFBheW9mZiAoZG91YmxlIGxvYW4sIGRvdWJsZSBwYXltZW50LCBkb3VibGUgaW50ZXJlc3QpewoJZG91YmxlIGludGVyZXN0QW10LCBtb250aGx5SW50ZXJlc3Q7CglpbnQgbnVtTW9udGhzLCB0b3RhbE1vbnRocywgaTsKCQoJdG90YWxNb250aHMgPSBsb2FuL3BheW1lbnQ7CgludW1Nb250aHMgPSAwOwoJCgkJY291dCA8PCAiSW50ZXJlc3QgcmF0ZSBwZXIgbW9udGggaXMgIjsKCQltb250aGx5SW50ZXJlc3QgPSAoKGxvYW4gKiBpbnRlcmVzdCkgLyAxMik7CgkJY291dCA8PCBtb250aGx5SW50ZXJlc3QgPDwgZW5kbDsKCQltb250aGx5SW50ZXJlc3QgPSBsb2FuICogbW9udGhseUludGVyZXN0OwoJCQoJCWlmIChsb2FuID4gcGF5bWVudCl7CgkJCWZvciAobnVtTW9udGhzOyBudW1Nb250aHMgPCB0b3RhbE1vbnRoczsgKytudW1Nb250aHMpIHsKCQkJCWNvdXQgPDwgIk1vbjogIiA8PCBudW1Nb250aHMgPDwgIiAiOwoJCQkJY291dCA8PCAiQmFsOiAiIDw8IGxvYW4gPDwgIiAiOwoJCQkJY291dCA8PCAiSW50OiAiIDw8IG1vbnRobHlJbnRlcmVzdCA8PCAiICI7CgkJCQljb3V0IDw8ICJQYXk6ICIgPDwgcGF5bWVudCA8PCBlbmRsOwoJCQkJCgkJCQlsb2FuID0gbG9hbiAtIHBheW1lbnQgKyBtb250aGx5SW50ZXJlc3Q7CgkJCQltb250aGx5SW50ZXJlc3QgPSAoKGxvYW4gKiBpbnRlcmVzdCkgLyAxMik7CgkJCX0gCgkJfQoJcmV0dXJuIG51bU1vbnRoczsJCQp9CgkKCgoKCmludCBtYWluKCkgewoJZG91YmxlIGxvYW4sIHBheW1lbnQsIGludGVyZXN0OwoJY291dC5zZXRmKGlvczo6Zml4ZWQsIGlvczo6ZmxvYXRmaWVsZCk7Cgljb3V0LnByZWNpc2lvbigyKTsKCWNvdXQgPDwgIlBsZWFzZSBlbnRlciBsb2FuIGFtb3VudDogIjsKCWNpbiA+PiBsb2FuOwoJY291dCA8PCBsb2FuIDw8IGVuZGw7Cgljb3V0IDw8ICJQbGVhc2UgZW50ZXIgbW9udGhseSBwYXltZW50OiAiOwoJY2luID4+IHBheW1lbnQ7Cgljb3V0IDw8IHBheW1lbnQgPDwgZW5kbDsKCWNvdXQgPDwgIlBsZWFzZSBlbnRlciBhbm51YWwgaW50ZXJlc3Q6ICI7CgljaW4gPj4gaW50ZXJlc3Q7Cgljb3V0IDw8IGludGVyZXN0IDw8IGVuZGw7CgoJCglpbnQgbnVtTW9udGhzID0gUGF5b2ZmKGxvYW4sIHBheW1lbnQsIGludGVyZXN0KTsKCWlmIChudW1Nb250aHMgIT0gLTEpIHsKCQljb3V0IDw8ICJJdCB3aWxsIHRha2UgIiA8PCBudW1Nb250aHM7CgkJY291dCA8PCAiIG1vbnRocyB0byBwYXkgb2ZmIHRoZSBsb2FuLiIgPDwgZW5kbDsKCX0KCXJldHVybiAwOwp9