PRG355 FINAL LAB PROJECT
Due: Week 14 lab class
Design an OOP program that can be used to create, update and read a file, which contains cars and their services data.
Your program should create and use a Service class to store and process the service’s data, such as the service description, number of months between two services, date of the last service and the date of the next service. The program should get all necessary data from the user except the date of the next service which will be computed by the program. The Service class should contain a function that will compute the date of the next service using the date of the last service and the number of months between two services.
Your program should also create and use a Car class to store and process the car’s data, such as the car model, license plate number and year when the car was made.
In addition to the Service and Car class your program should create an AutoBody class that inherits Service and Car. This class should contain all necessary functions to create and process the file which contains the cars and their services data.
The program should enable the user to:
– Create a file and store the car and its service data into the file. Please note that the file will be appended.
– Search for a specific car in the file using its licence plate number and display all its services’ records
– Search for a specific date and display all cars that have to be serviced on this date including their service info as well.
You should design and use an appropriate menu(s) with all necessary menu options to perform the required tasks.
It is required to use the following C++ language constructs/tools:
3. Operator functions (at least two)
5. Error checking and handling
Program documentation should contain the following:
· Problem description
· Printout of the source code
· Sample of the program output (i.e., screen captures), which includes the data that you
used to test your program.
Hand in the following:
– A source code file that is submitted electronically on the BlackBoard – A printout of the program documentation
Under no circumstances will an extension be granted for this project. The project is due in your last lab class and should be demonstrated to your teacher in the class.