Description
Dynamic Arrays
Write a checkbook balancing program. The program will read from a data file (C:\CS2420\Assignment1\data.txt) information about a checking account. A sample data file is included for this project. The program will parse the data from that file and enter it into a CheckBook object. The CheckBook object will keep track of the following information:
-
List of checks written
-
number of checks written
-
account balance
-
expected account balance
After all data has been read from the data file, the CheckBook object will display the following data:
-
total checks cashed
-
total deposits
-
actual balance
-
difference between actual and expected balance
-
list of all cashed checks
-
list of all outstanding (ie not cashed) checks
Much of this project has already been written for you as a Visual Studio 2017 project. However, this project is NOT complete. You will have to write (and add to the solution):
-
DynamicArray.cpp (DynamicArray.h is provided)
-
CheckBook.cpp (CheckBook.h is provided)
-
Check.cpp (this will be trivial. Check.h is provided)
You will be responsible to add all file and function prologues.
You must NOT use any Standard Template libraries when implementing your Dynamic Array. That is because you are basically implementing a watered-down std::vector class. Be sure to set the initial size of your Dynamic Array to 2 and then implement a way to “grow” this array when a call to the push_back() method has no more room for the new Check.
There is a
#define NO_VECTOR line at the top of the CheckBook.h file. Your program should replace your Dynamic Array with a Standard Template vector<Check> if that #define line is commented out. For example, look in your CheckBook.h file to see how the #define works.
Grade Sheet
Assignment #1: CheckBook (150 pts)
Documentation (10 pts)
Student name, Section and Disclaimer Proper function and class headers
Correct Output (40 pts)
Check Class (10 pts)
Dynamic Array (40 pts)
Constructor
Destructor
push_back
at
Check Book (50 pts)
Constructor and Destructor
SetNewAccountBalance
SetExpectedBalance
Deposit
WriteCheck
DisplayResults
______/5
______/5
______/40
______/10
______/5
______/5
______/20
______/10
______/10
______/5
______/5
______/5
______/10
______/15