Question: I need to use object oriented principles on C++ for this project like, inheritance , STL algorithms like map , set and list . This

I need to use object oriented principles on C++ for this project like, inheritance, STL algorithms like map, set and list. This project also needs to be console based (not GUI based). There should be a text based menu at the start where user can add students, courses, or creating a schedule based on courses and their hours by prompts.

In this project, you are going to deal with classes of type course and student. There will be various courses offered in the semester and there are students who are taking those courses. We can not prevent any student from taking any of the courses that are offered. Each of the courses will have a specific ID such as 123456 and the number of lectures that it requires for every week. Each of the students will have a specific string ID such as Jack. If a student takes no course, he/she is free at any time of the week. During each week, the lectures can be given at six particular slots in each weekday. To set it more formally, the available slots are as follows:

I need to use object oriented principles on C++ for this project

A professor is always available to teach any lecture at any slot and at any time of the week. Your program is supposed to perform the following actions with a menu-driven interface:

Given the ID of the course and the weekly lecture load, add a new course to the list of offered courses

Add a new student to the list of students by recording his/her ID.

Update a students record by adding a course to the list of courses that he/she takes.

Given the list of courses previously added and the available list of students taking particular courses offered among the available courses, determine an acceptable schedule for the semester. Any acceptable schedule will do. If no such schedule exists, report it and terminate the program.

The algorithms that you will use are the design decisions. The format and look of the user interface is completely up to you. The student and course records are supposed to exist only within the lifetime of a program session. Once you re-execute the program, everything will start from scratch. You need to reenter student and course records.

An example may clarify how schedule determination is to be done. Let the followings be the course and student records available in a particular session of your program:

Courses:

111111 -- 8 hours

222222 -- 8 hours

333333 -- 8 hours

444444 -- 6 hours

555555 4 hours

Students:

Jack 111111, 222222, 444444, 555555

John 222222, 555555

Williams 222222, 333333, 555555

Schedule:

111111 Monday -> TimeSlot-1, TimeSlot-2, TimeSlot-3, TimeSlot-4, TimeSlot-5, TimeSlot-6

Tuesday -> TimeSlot-1, TimeSlot-2

222222 Wednesday ->Timeslot-5, TimeSlot-6

Thursday-> TimeSlot-1, TimeSlot-2, TimeSlot-3, TimeSlot-4, TimeSlot-5, TimeSlot-6

333333 Monday -> TimeSlot-2, TimeSlot-3

444444 Friday -> TimeSlot-3, TimeSlot-4

Time Slot-1 Time Slot-2 Time Slot-3 Time Slot-4 Time Slot-5 Time Slot-6 Monday Tuesday Wedensday Thursday Friday Saturday Sunday

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!