Question
Write a C program that allows the user to make some simple banking transactions. The program should first prompt the user to enter the current
Write a C program that allows the user to make some simple banking transactions.
The program should first prompt the user to enter the current balance of his/her bank account (in dollars and cents, not less than zero). The program should then prompt the user to enter the number of withdrawals to make, and then the number of deposits to make.
For this assignment, let's set a maximum of 5 deposits and 5 withdrawals, you'll see why as you read on.
Using a loop, the program should then prompt the user to enter the amount of the first deposit (a positive amount to add to the bank account balance), the amount of the second deposit, the third, etc., until the number of deposits have been processed.
Using a second loop, the program should then prompt the user to enter the amount of the first withdrawal (a positive amount to subtract from the bank account balance, if possible), the amount of the second withdrawal, the third, etc. until the number of withdrawals have been processed.
Once all deposits and withdrawals have been made, the program should output the ending balance.
The dialog with the user should look like the following:
Welcome to the Computer Banking System
Enter your current balance in dollars and cents: 256.40
Enter the number of deposits (0 - 5): 3
Enter the number of withdrawals (0 - 5): 2
Enter the amount of deposit #1: 10.50
Enter the amount of deposit #2: 12.25
Enter the amount of deposit #3: 125.30
Enter the amount of withdrawal #1: 120.35
Enter the amount of withdrawal #2: 35.60
*** The closing balance is $248.50 ***
The program should also output one of the following messages based on the closing balance. That is:
If the closing balance is greater than or equal to 50000.00, output:
"*** It is time to invest some money! ***"
If the closing balance is between 15000.00 and 49999.99, output:
"*** Maybe you should consider a CD. ***"
If the closing balance is between 1000.00 and 14999.99, output:
"*** Keep up the good work! ***"
If the closing balance is between 0.00 and 999.99, output:
"*** Your balance is getting low! ***"
So, in the above example, the last line of sample output would be:
*** Your balance is getting low! ***
Regarding error checking on all user input, the following 5 error checks (on user input) should be included in your program:
1. Ensure that the starting (current) balance is a positive number. If not, the following error message should be displayed:
*** Beginning balance must be at least zero, please re-enter.
2. Ensure that the number of deposits is between 0 and 5. If not, the following error message should be displayed:
*** Invalid number of deposits, please re-enter.
3. Ensure that the number of withdrawals is between 0 and 5. If not, the following error message should be displayed:
*** Invalid number of withdrawals, please re-enter.
4. Ensure that the deposit amount is equal to or greater than zero. If not, the following error message should be displayed:
*** Deposit amount must be greater than zero, please re-enter.
5. Ensure that the withdrawal amount does not exceed the current balance (including the new deposits). If so, the following error message should be displayed:
*** Withdrawal amount exceeds current balance.
So, for example, a sample run of the program with error checking might look like:
Enter current balance in dollars and cents: -56.40
*** Beginning balance must be at least zero, please re-enter.
Enter current balance in dollars and cents: 256.40
Enter the number of deposits (0 - 5): -3
*** Invalid number of deposits, please re-enter.
Enter the number of deposits: 3
Enter the number of withdrawals (0 - 5): 2
Enter the amount of deposit #1: 10.50
Enter the amount of deposit #2: -12.25
*** Deposit amount must be greater than zero, please re-enter.
Enter the amount of deposit #2: 12.25
Enter the amount of deposit #3: 125.30
Enter the amount of withdrawal #1: 5000.00
*** Withdrawal amount exceeds current balance, please re-enter.
Enter the amount of withdrawal #1: 120.35
Enter the amount of withdrawal #2: 35.60
*** The closing balance is $248.50 ***
*** Your balance is getting low! ***
Now, the reason we restrict the maximum number of deposits and withdrawals to 5 has to do with the array sizes. You want to be sure that the user does not want to enter more information than you can store in your arrays. In my example above, I made the array sizes "5". That means that I can store up to 5 deposits and 5 withdrawals. So, I want to test that the user does not plan to enter more than that.
So, for example, if the user enters 10 as the number of deposits, the following should be displayed;
Enter the number of deposits (0 - 5): 10
*** Invalid number of deposits, please re-enter.
Lastly, you are to keep track of all of the deposits and all of the withdrawals so that you can print them out in "record" form. You do this by storing them in arrays. You will have one array to hold the deposit amounts entered by the user, and another array to hold the withdrawal amounts. You want to be sure that the size of the arrays are large enough to handle 5 deposits and 5 withdrawals. Perhaps:
float deposits[5], withdrawals[5];
Based on the above program run, the Bank Record should look like:
*** Bank Record ***
Starting Balance: $ 256.40
Deposit #1: 10.50
Deposit #2: 12.25
Deposit #3: 125.30
Withdrawal #1: 120.35
Withdrawal #2: 35.60
Ending Balance: $ 248.50
Try to align the decimal points as closely as possible in your output.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started