You will work in a group to create an ATM program with the following implementations:
Your are to implement this program using classes.
bankaccount would be an object and most likely the member functions will be
Deposit and Withdraw but, there might be others.
1) Implement your own code for input protection, such as: the user has
to enter a pin number that exists to enter in their account. Protect the input such
that if wrong
selections are made the user will receive a warning. The user has to type
dollar amounts to
withdraw, deposit. (20 extra points if you protect the input
against incorrect entries such as chars when you are supposed to enter dollar
amounts AND if you also protect against input of numbers that go beyond the
allowed range for a particular data type, in this case floats)
2) Improve your code to make it very close to the way that
a real ATM machine works. This includes: Welcome greeting banner, clearing the
screen after each window, options to deposit or withdraw (just one account per
customer is necessary. Just checking, no need for savings account). Just
think of all the options that you see in a real ATM and add your own. If you
are a speaker of another language you may even implement it using your language! but, of
course, you will need the English menus as well.
2) You will implement an array of struct with 15 customers
in your program.
3) Read the initial values from an input file into an array
and keep track of the transactions on the screen until the user is finished
with their transactions. This file will have this format:
Bob Jones 1234
1000.00
David Wilson 2345 500.00
Phil Davis 7890 45.00
...complete the rest, your bank should have 15 customers...
4) You can use any compiler. If you use Visual
C++ you will have the availability of the string type that would handle the
customer names, otherwise you will most likely have to use an array of chars
to handle the names.
5) Your program will need to have functions!
6) Working in a group is very challenging. If you find
yourself in a situation where you feel that other members of the group are not
contributing let me know at least 1 (two) week before the assignment is due.
At my discretion after talking to all the members of the group I may split the
group and the/each member(s) will have to complete the ENTIRE assignment on
their own.
7) PLAN is the key for completing this assignment successfully.
Create due dates for completion for the many parts of this assignment. I will
"try" to give you some time in class for planning, but also plan to
meet outside of class and use your email as part of the communication between
the members. If you are comfortable creating links in UNIX you can have all
the members of your group working on this program together.
8) If you have questions about the assignment ASK the
instructor.
Examples of programs using classes: