In this assignment you are to create an interactive line command driven C++ program that allows a user to do the following:

1) Create a bank account by supplying a user id and password
2) Login using this id and password
3) Quit the program

Upon successful login, the user will be presented with a menu to do one or more of the following actions:

1) Withdraw money
2) Deposit money
3) Request balance
4) Quit the program

Ensure that you remove any unnecessary punctuation from monetary input (for example, all $ or other currency symbols should be removed prior to processing, do NOT display an error message to the user for characters which can be removed from the input string without changing the intended value).

Format all monetary outputs on the display Currency (e.g. $ 25,928.43) with all decimal places containing digits.

The User ID and password fields may be any combination of characters which are:

1) Visible when displayed on the screen (no control characters0
2) Normally accessible from a standard US keyboard

Separate your code into multiple functions, demonstrating good programming practices.

If login was not successful (for example the id or password did not match) then the user must be returned to the introduction menu.

Submit the following as a file (screen capture) to demonstrate your program in action. Items in BOLD are user input:

Welcome to COP2513.F16’s ATM Machine
Please select an option:
l -> Login
c -> Create New Account
q -> Quit
> l
Please enter your user id: QTL7Zark7
Please enter your password B1rdGo!
******** LOGIN FAILED! ********
Please select an option from the menu below:
l -> Login
c -> Create New Account
q -> Quit
> c
Please enter your user name: Y0ro1den!
Please enter your password: S@murA1
Thank You! Your account has been created!
l -> Login
c -> Create New Account
q -> Quit
> l
Please enter your user name: Y0ro1den!
Please enter your password: S@murA1
Access Granted - Y0ro1den!
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> d
Amount of deposit: $2056.45
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> r
Beginning balance : $ 0.00
Deposit amount : $ 2,056.45
Your balance is : $ 2,056.45
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> d
Amount of deposit: 56.45
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> r
Beginning balance : $ 2,056.45
Deposit amount : $ 56.45
Your balance is $ 2,112.90
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> w
Amount of withdrawal: -2.5
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> r
Beginning balance : $ 2,112.90
Withdrawal amount : $( 2.50)
Your balance is $ 2,115.40
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> w
Amount of withdrawal: 125.57
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> r
Beginning balance : $ 2,115.40
Withdrawal amount : $ 125.57
Your balance is $ 1,989.83
d -> Deposit Money
w -> Withdraw Money
r -> Request Balance
> q
Thanks for banking with COP2513.F16, Y0ro1den!!
Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.