atm program, C/C++ Programming

Assignment Help:
Ask quIn this assignment you will create an ATM Machine program (using C++) that allows a user to choose one of the following introduction menu items:

1) Create a bank account by supplying a user id and password.

2) Login using their id and password.

3) Quit the program.

If login was not successful (for example the id or password did not match) then the user will be taken back to the introduction menu. Use a loop.

Now if login was successful the user will be able to do the following main menu items:

1) Withdraw money.

2) Deposit money.

3) Request balance.

4) Quit the program.

This is what your program in action will look like:

Hi! Welcome to the ATM Machine! Please select an option from the menu below:

l -> Login

c -> Create New Account

q -> Quit

> l

Please enter your user id: ab12

Please enter your password ab2345

******** LOGIN FAILED! ********

Please select an option from the menu below:

l -> Login

c -> Create New Account

q -> Quit

> c

Please enter your user name: ab12

Please enter your password: ab2345

Thank You! Your account has been created!

l -> Login

c -> Create New Account

q -> Quit

> l

Please enter your user id: ab12

Please enter your password: ab2345

Access Granted!

d -> Deposit Money

w -> Withdraw Money

r -> Request Balance

q -> Quit

> d

Amount of deposit: $20

d -> Deposit Money

w -> Withdraw Money

r -> Request Balance

q -> Quit

> r

Your balance is $20.

d -> Deposit Money

w -> Withdraw Money

r -> Request Balance

q -> Quit

> w

Amount of withdrawal: $2.5

d -> Deposit Money

w -> Withdraw Money

r -> Request Balance

q -> Quit

> r Your balance is $17.5.

d -> Deposit Money

w -> Withdraw Money

r -> Request Balance

q -> Quit

> q

Thanks for stopping by!

In introduction menu, if User enters an option other than (uppercase or lowercase) C, L, or Q, the program does not do anything and shows a message wrong option and displays the menu again. When user enters option C, the program asks the user to enter a user ID and a password, then the introduction menu will be displayed again. The login and password should be stored in a file. The account must be an object created using OOP. The class header must be in a separate file and the class methods codes as well.

If the user chooses option L, the program will display the login prompt and then, it will ask for the password. At this stage, the entered login and password are compared to the stored login/password pair and proper message will show up if the match was not found which takes the user back to the introduction menu. Now, if login was successful, the banking main menu will be displayed to let the user choose one of the options. The initial balance for a new user account should be 0.000 OMR. If the user chooses option W, the program should ask the user to enter amount user wishes to withdraw. Validation: In the case of withdraw, if the amount is more than balance the user should be notified and no withdraw will occur. If the user chooses option D, the program should ask the user how much amount the user wishes to deposit and add it to initial balance. If the user chooses option B, the program should display the balance amount in the user account.

Additional Instructions: Please make sure your code has following functions:

1. Once you execute the program. You must create an array of Bank Accounts and read the account information from a file.

2. introMenu(): Function to display the introduction menu for login, create account, and quit. Use a switch statement.

3. createAccount(): Function that accepts user ID and password to create the account.

4. login(): Function to match user ID and password to indicate if login is successful or not.

5. mainMenu(): Function to display the main menu choices for Deposit, Withdrawal, Balance and Quit. Use a switch statement.

6. deposit (): Function to accept the amount user wishes to deposit in his/her account.

7. withdraw(): Function to accept the amount user wishes to withdraw from the account.

8. displayBalance(): Function to display the balance amount in the user account.

9. Once the user exists the program, you should update the bank accounts information from the array.

Expert Answer100%(1 rating)
//Account.h #include using namespace std; class persons { public: string username; string password; double balance = 0; }; class Account { public : fstream f1; persons p1; void ... view the full answer
estion #Minimum 100 words accepted#

Related Discussions:- atm program

Function returning object, F u nction Returning Object: This program ...

F u nction Returning Object: This program is like to the previous program except the function returns object.  The main rule to be remembered is the function returning obj

Explain operators, Operators The variables, which are declared and expl...

Operators The variables, which are declared and explained, are the operands, which are operated upon by the operators. Operators specify what operations are to be performed on

Heating and thermodynamic, i want software to calculate heating or use ther...

i want software to calculate heating or use thermodynamic equation , pleas help me

Write the recursive bisection root finding function, Rewrite the recursive...

Rewrite the recursive bisection root finding function from lecture to be iterative (using a while loop). The function declaration should be root = bisectIter(f,a,b,tol). The input

Coding Arena A B C D E F G, Damjibhai and Sham...

Damjibhai and Shamjibhai are two jeweler friends. They decide to play a simple game. The game comprises of removing the jewels for polishing, turn by turn. Once a jewel is removed

Arrays, how to write the code for operation research

how to write the code for operation research

Luminous Jewels - The Polishing Game, Byteland county is very famous for lu...

Byteland county is very famous for luminous jewels. Luminous jewels are used in making beautiful necklaces. A necklace consists of various luminous jewels of particular colour. Nec

Bitcoin alternative – deployment and modification, I started preparing an a...

I started preparing an alternative cryptocurrency and I am way over my head. I would like help in making modifications to the open source files and then help with deployment. I wil

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd