Нужно выполнить курсовую работу, в которой будут использованы заранее написанные мной структуры данных. В зависимости от выбора структур скину отчеты, которые (надеюсь) помогут разобраться в них лучше.Тема: “разработка базы данных «Студенческий поток»”Общая часть задания
Студент потока характеризуется следующими данными:
- ФИО (до 50 символов);
- номер группы;
- набор из пяти оценок за последнюю сессию (без указания предметов);
- размер стипендии.
- дополнительная информация (я выбрал passportID, по нему будет осуществляться поиск и удаление студентов).
Необходимо:
- разработать (и программно реализовать) динамические структуры данных и алгоритмы их обработки, позволяющие поддерживать выполнение следующих функций:
- консольный ввод/вывод данных о всех студентах потока;
- файловый ввод/вывод данных о потоке;
- редактирование данных о студентах и группах потока, включающее операции добавления/удаления групп и студентов;
2. Вывести в алфавитном порядке фамилии всех «круглых» отличников потока, начинающиеся с заданного сочетания букв.
Общие требования к программам
- Программа должна поддерживать систему меню, пункты которых соответствуют выполнению функций, предусмотренных общей частью задания.
- Предлагаемые структуры данных должны учитывать изначальную неопределенность возможного количества групп и студентов в группах, а также обеспечивать максимальную скорость процессов обработки данных, предусмотренных заданием.
- Тексты программ должны содержать комментарии, объясняющие назначение основных функций, типов и объектов данных, функциональных блоков и т.п.
- Представляемые тексты программ должны обеспечивать возможность их компиляции и построения в среде MS Visual Studio.
Структуры на выбор: двухсвязный список, хеш-таблица (бакеты - двухвсязные списки), хеш-таблица (бакеты - деревья бинарного поиска), деревья бинарного поиска.
Идея для курсовой такова: должны быть написаны структуры Student, Group (хранит студентов) и StudentFlow (хранит группы). У Student должны методы, которые позволят редактировать ФИО, номер группы, оценки, стипендию и номер паспорта. У Group должны быть: добавление студента, удаление его по паспорту, поиск студента по паспорту, обновление информации о студенте, вывод студентов на экран, фильтрация по заданному значению, сохранение в файл и чтение из файла. То же должно быть и у StudentFlow, но появятся еще добавление группы и ее удаление.