Due: Week 13 TA
Create a program that simulates a university course registration system. Consider the following requirements:
- Courses: Define a Course class with attributes like course code, title, maximum capacity, current number of students enrolled, etc.
- Students: Create a Student class with attributes such as student ID, name, courses enrolled, etc.
- Registration Process: Implement methods to enroll students in courses, check available slots, display course details, display student information, etc.
- Data Handling: Use file handling to read/write course information and student data. Courses and student data should be stored in separate files.
- Validation: Ensure that the system prevents enrolling a student in a course that has reached its maximum capacity.
- Driver file/main file: Test that your classes, methods, and data handling work successfully.
Extra things you can do: visualize the number of students in each course, GUI for the system, and many more.