課題はこの以下です。 Your program will ask the user to enter the amount of money they want to borrow, the interest rate, and the monthly payment amount. Your program will then determine how many months it will take to pay off that loan, what the final payment amount will be, and how much interest was paid over that time. If the monthly payment amount isn't high enough to pay off more than one month's interest, your program should notify the user what the minimum monthly payment is.
Here are some examples of how your program should behave. Please use the exact same test cases as these, so that I can verify that your program works:
** Welcome to the Consumer Loan Calculator **
How much do you want to borrow? $1000 What is the annual interest rate expressed as a percent? 18 What is the monthly payment amount? $50 Your debt will be paid off after 24 months, with a final payment of just $47.83 The total amount of interest you will pay during that time is $197.83
** Don't get overwhelmed with debt! **
** Welcome to the Consumer Loan Calculator **
How much do you want to borrow? $15000 What is the annual interest rate expressed as a percent? 10 What is the monthly payment amount? $100 You must make payments of at least $126 Because your monthly interest is $125.00
** Don't get overwhelmed with debt! **
** Welcome to the Consumer Loan Calculator **
How much do you want to borrow? $-50 You must enter a positive number! How much do you want to borrow? $-200 You must enter a positive number! How much do you want to borrow? $20000 What is the annual interest rate expressed as a percent? -2.5 You must enter a positive number! What is the annual interest rate expressed as a percent? 5 What is the monthly payment amount? $0 You must enter a positive number! What is the monthly payment amount? $200 Your debt will be paid off after 130 months, with a final payment of just $125.79 The total amount of interest you will pay during that time is $5925.79
** Don't get overwhelmed with debt! **
Here are the rules and some tips: ○The user enters the interest rate as an annual percentage rate. You need to convert this annual percentage to a monthly decimal. For example, 12% annual interest is 1% per month, which is 0.01 ○Your program must allow only positive numbers to be entered by the user, as shown above ○This program should mimic the standard way loans work for credit cards, car loans, and home mortgages: Each month the following happens: ・The balance (amount owed) is multiplied times the monthly interest rate to determine how much interest is owed this month. This amount of interest is added to the principle (additional debt) ・This amount of interest is also added to the total interest so far (to be output at end) ・The monthly payment is subtracted from the balance, reducing the amount of debt. ・The month is counted (to be output at end) This is repeated each month until the debt is paid off (balance reaches zero). ○Your program must notify the user if their monthly payment isn't high enough, and tell them what the minimum payment is to pay off one month's interest (and thus make progress paying off the debt). ○Your program must use at least 2 functions in addition to main. At least one of these functions must use a call-by-reference parameter These functions can be of your choosing, but here are two ideas for functions you could write for your program: void get_input(double& principle, double& interest, double& payment); /* This function asks the user to input the principle, interest, and payment amount, and only accepts positive numbers for input. All three parameters are call-by-reference, so the function in effect returns the three values by changing the values of the arguments which are passed to it. The initial values of these parameters are ignored and overwritten. */
double pay_off_loan(double principle, double rate, double payment,int& months, double& total_interest); /* This function assumes the payment is enough to cover first month's interest. It has a loop to pay off the loan one month at a time. Pre-Condition: principle = starting principle. rate = monthly interest rate expressed as a decimal. payment = amount of monthly payment, which must be high enough to pay off the first month's interest. Post-Condition: amount of final payment is returned by the function. months = number of months it took to pay off loan. total_interest = total amount of interest paid during that time. It may help to think of principle, rate, and payment as input parameters, and months, and total_interest as output parameters. */