This repository implements the EE441 Classroom Interface, a C++ program for managing student information and scores using object-oriented principles. It includes functionalities like adding students, updating scores, calculating averages, and filtering students based on performance thresholds. The project follows strict guidelines emphasizing correctness, efficiency, and clarity. Features
Add students, initialize scores, and update them as needed.
Calculate classroom averages for quizzes, homework, finals, and overall scores.
Modify exam weight percentages and filter students by score thresholds.
Example Usage
Add a student with addNewStudent(ID, name, surname), update scores with changeStudentScores, and calculate averages using calculateAverage. Compile the program with Code::Blocks IDE using GNU GCC Compiler.
This program implements the Section Assigner for EE441, designed to allocate students to lab sections based on their preferences while respecting section capacities. It utilizes custom data structures like classes, stacks, and queues to ensure efficient management and adherence to the assignment rules. The input file preferences.txt provides the section capacities and student preferences, while the output file results.txt displays the final assignments and unassigned students. The algorithm prioritizes students with a single eligible section and re-evaluates waiting students iteratively for optimal placement.