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

What is pointer arithmetic, Pointer Arithmetic We can manipulate the po...

Pointer Arithmetic We can manipulate the pointers too. We can perform operations such as addition, subtraction, increment and decrement etc.,. As the pointer variables have add

.program, Write a c++ program to find the sum of 0.123 ??103 and 0.456 ??10...

Write a c++ program to find the sum of 0.123 ??103 and 0.456 ??102 and write the result in three significant digits

Structured design of programs, Within software engineering, software is ver...

Within software engineering, software is very rarely written by a single software engineer. Usually a team of engineers write a program; therefore a formal structural design approa

Wap to swap the three digit number, WAP TO SWAP THE THREE DIGIT NUMBER ...

WAP TO SWAP THE THREE DIGIT NUMBER void main () { int b,r,n,r1,r2; clrscr (); printf ("Enter the Value: "); scanf ("%d",&n); r=n%10; n=n/10; r1=n%10;

Implementation of the stack class in c++, Implementation of the Stack class...

Implementation of the Stack class in C++: How to implement stack class in c++. int Stack::push(int elem) {    if (top    {       list[top++] = elem;       r

Discount program, Build a program that calculates a discount for items base...

Build a program that calculates a discount for items based on quantity bought each item is $99.99 Ask user to enter the quantity of the items Get the quantity of items from the u

Decodethecode, decode smugglers are very smart in day by day

decode smugglers are very smart in day by day

Input, I want to take 1.1 as input but when I am declaring it as float the ...

I want to take 1.1 as input but when I am declaring it as float the output is given as 1.1000000

Last ant on rod, You are given a collection of words, say as in a dictionar...

You are given a collection of words, say as in a dictionary. You can represent it in the following compressed form: the first word will be followed by a sequence of a pair of numbe

What are the different types of endless loops, What are the different types...

What are the different types of endless loops? An endless loop can be of two types: i.) A loop that is intentionally designed to go round and round until the condition withi

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