Create an ADT desgned to store a database of student records for a class similar to this one. It must be able to hold student name (first and last), student ID number, and a dynamic list of the different types of grades in this course. It must also be able to store some information about the course in general (course name, instructor name, etc...). It must be able to calculate individual averages, total course average, and final grade for each student. It must be searchable and sortable by any of these items and be able to save and load from text-based datafiles.
Write a main program that makes use of your ADT to manipulate this database. This program must make available to the user all the features of your ADT.
You should submit at least 3 datafiles for use with this program. At least one of them should contain at least 500 students.
Note: Use of the STL is not only permitted, but recommended for this project if you choose this option.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
4)all source code files for this project in C++ (both implementation [.cpp] files and header [.h] files)
5)and output from enough test runs to show the full features of your [url removed, login to view] sure to include the datafiles indicated above
6)use copy constructors, destructors, and operator overloading for such things as comparison and other things. Class destructor, copy constructor implement. overload operators =, ==, !=,>> ,<<.
Microsoft Visual C++/GC++(unix sun)