Ask C/C++ Expert


Home >> C/C++

Write a C program that allows the user to make some 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 50 deposits and 50 withdrawals, you'll see why as you read on. These will be stored in arrays, which you will be studying for this assignment. One of your program statements should be:

float deposit[50], withdrawal[50];

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.

Read all the specifications carefully. I did not show all of the editing features The dialog with the user should look similar to the following, only with your special introductory statement(s) as you wish:

Welcome to the Sears Banking System (or whatever you wish here)

Please enter your name: Jim

Now enter your current balance in dollars and cents: 256.40

Enter the number of withdrawals: 2

Enter the number of deposits : 3

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 Jim is $248.50 ***

At this point, 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:

"*** (name) it is time to invest some money! ***"

If the closing balance is between 15000.00 and 49999.99, output:

"*** (name) maybe you should consider a CD. ***"

If the closing balance is between 1000.00 and 14999.99, output:

"*** (name) keep up the good work! ***"

If the closing balance is between 0.00 and 999.99, output:

"*** (name) your balance is getting low! ***"

So, in the above example, the last line of sample output would be:

*** Jim your balance is getting low! ***

Regarding error checking on all user input, the following check should be made while users are entering the withdrawal amounts: If the withdrawal amount exceeds the current balance (including the new deposits), the program should issue the following error

*** Withdrawal amount exceeds current balance. ***

The program should then re-prompt for a lower withdrawal amount. But, if the current balance goes to zero, no more withdrawals should be made and an appropriate message should appear (that one's up to you! Use some polite creativity!)

So, for example, a sample run of the program with error checking might look like:

Enter current balance in dollars and cents: -56.40

Error: Beginning balance must be at least zero, please re-enter!

Enter current balance in dollars and cents: 256.40

Enter the number of withdrawals: 2

Enter the number of deposits: -3

Error: Number of deposits must be at least zero, please re-enter.

Enter the number of deposits: 3

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: 5000.00

*** Withdrawal amount exceeds current balance. ***

Enter the amount of withdrawal #1: 120.35

Enter the amount of withdrawal #2: 35.60

*** The closing balance Jim is $248.50 ***

*** Jim your balance is getting low. ***

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 50 deposits and 50 withdrawals. Perhaps:

float deposits[50], withdrawals[50];

*** Banking Summary ***

Start 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

It is hard to see this in HTML, but I want you to align the decimal points in the Notice the test above for "Too many deposits". You want to be sure that the user does not want to enter more information than you can store in your array. In my example above, I made the array sizes "50". That means that I can store up to 50 deposits and 50 withdrawals. So, I want to test that the user does not plan to enter more than that. The same error checking should be done on the code that prompts for withdrawals.

If you run out of time then you can:

1. Omit the error checking for balance not going less than zero for -5.

2. Omit the personalized message for -5

NOTE: There are some bothersome complications with the entry and storage of some float numbers. Because of the way data is stored the float number 22.39 may be stored as 22.389999 and this may cause a problem with your final if statements and even with balance equaling zero. To help with this you can test for the balance < .01 instead of = 0. This is a well known anomaly in C. You may not encounter these problems, I just wanted to warn you of the potential problem.

(Darth Vader theme plays in background.....)

C/C++, Programming

  • Category:- C/C++
  • Reference No.:- M91341728
  • Price:- $45

Guranteed 36 Hours Delivery, In Price:- $45

Have any Question?


Related Questions in C/C++

Question 1find the minimum and maximum of a list of numbers

Question: 1. Find the Minimum and Maximum of a List of Numbers: 10 points File: find_min_max.cpp Write a program that reads some number of integers from the user and finds the minimum and maximum numbers in this list. Th ...

Software development fundamentals assignment 1 -details amp

Software Development Fundamentals Assignment 1 - Details & Problems - In this assignment, you are required to answer the short questions, identify error in the code, give output of the code and develop three C# Console P ...

What are the legal requirements with which websites must

What are the legal requirements with which websites must comply in order to meet the needs of persons with disabilities? Why is maximizing accessibility important to everyone?

There are several ways to calculate the pulse width of a

There are several ways to calculate the pulse width of a digital input signal. One method is to directly read the input pin and another method (more efficient) is to use a timer and pin change interrupt. Function startTi ...

Assignment word matchingwhats a six-letter word that has an

Assignment: Word Matching What's a six-letter word that has an e as its first, third, and fifth letter? Can you find an anagram of pine grave. Or how about a word that starts and ends with ant (other than ant itself, of ...

1 implement the binary search tree bst in c using the node

1. Implement the Binary Search Tree (BST) in C++, using the Node class template provided below. Please read the provided helper methods in class BST, especially for deleteValue(), make sure you get a fully understanding ...

Assign ment - genetic algorithmin this assignment you will

ASSIGN MENT - GENETIC ALGORITHM In this assignment, you will use your C programming skills to build a simple Genetic Algorithm. DESCRIPTION OF THE PROGRAM - CORE REQUIREMENTS - REQ1: Command-line arguments The user of yo ...

Project - space race part a console Project - Space Race Part A: Console Implementation

Project - Space Race Part A: Console Implementation INTRODUCTION This assignment aims to give you a real problem-solving experience, similar to what you might encounter in the workplace. You have been hired to complete a ...

Why do researcher drop the ewaste and where does it end

Why do researcher drop the ewaste and where does it end up?

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As