Final Answer:
The program will use Python to manage student records through classes, dictionaries, and CSV file handling. It will provide an interactive query system for user input of majors and GPAs, returning student information meeting specific criteria, including closest matches if exact matches aren't found.
Step-by-step explanation:
This program leverages Python's classes, dictionaries, and CSV file handling to manage student records efficiently. By parsing input CSV files for student information, it creates a system capable of interactive queries. Upon user input of a major and GPA, the program filters the student records based on these criteria.
It validates the input, ensuring a single major and GPA are provided. Then, it identifies students matching the given criteria, considering disciplinary actions and graduation dates. It calculates matches within a certain range (0.1 GPA) and suggests similar matches (within 0.25 GPA). If no exact matches are found, it provides information about the student within the requested major with the closest GPA. The program facilitates continuous queries until the user opts to quit by entering 'q'.
By using Python's robust functionalities like classes for data management, dictionaries for efficient storage and retrieval, and CSV handling for input and output, the program ensures streamlined access to student records. It implements strict validation to handle user input, extracting pertinent information while discarding irrelevant data. The system follows specific criteria to filter and present student details, adhering to the outlined guidelines. This program allows for seamless interaction, assisting users in finding relevant student information based on specified majors and GPAs while providing fallback options in case of no direct matches.