First C++ programming milestone
This is a simple programming exercise to test your understanding of
inheritance, classes etc.
You are to write a program which implements a simple database for student
records. Students all have a name, a date of birth and a year of study.
First and second year students each study three different courses. Each of
these has a home department and a date for the examination. There will be a
coursework and an examination mark which are initially unknown and will
later be set.
A typical first or second year record is as follows:
28th August 1974
Maths1, Mathematics, 1st June 1998, Unknown, Unknown
CS1, Computer Science, 3rd June 1998, 67, Unknown
AI1, Artificial Intelligence, 28th May 1998, 63, 65
Third and Fourth year students study eight modules. Each has a
coursework mark and an exam mark. They also do a project, with a title
and a mark. Any mark may be a percentage or unknown. Zero is a valid mark.
A typical third or fourth year record is as follows:
18th June 1972
Compilers, 34, 56
etc. for eight modules
Building a student database, Unknown
You should write and test a program which can read in a file of these
records and print them out.
You should test that your program can read a file which it has earlier
You should use a class Student and two sub-classes of that to hold the
records as you read them. You may want to make Student into a sub-class
of a list item class, as shown in the notes.