Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
cpp4_2008.doc
Скачиваний:
9
Добавлен:
04.11.2018
Размер:
212.99 Кб
Скачать

Вариант 21 Семестровый контроль

Разработать приложение, позволяющее организовать работу по учёту успеваемости студентов. Информация об учащемся, хранится в некотором описателе учащегося.

Описатель младшекурсника содержит следующую информацию: фамилия и инициалы студента, количество оценок и указатель на динамический массив оценок.

Описатель старшекурсника содержит следующую информацию: фамилия и инициалы студента, количество оценок и указатель на динамический массив оценок; направление темы УИР (учебно-исследовательской работы); место выполнения; оценка за УИР.

Информация обо всех студентах учебной группы сведена в таблицу учащихся, каждый элемент которой указатель на описатель учащегося (в таблице все элементы должны быть одного типа). Элементы таблицы упорядочены по фамилиям в алфавитном порядке.

Полная информация о группе содержится в таблице группы, каждый элемент которой состоит из «индекса группы», максимального количества дисциплин (оценок), типа учащихся и таблицы учащихся.

Обеспечить выполнение следующих операций.

  • Для таблицы группы:

    • получить «индекс группы»; получить количество дисциплин; получить тип группы (учащихся);

    • включить новый элемент в таблицу учащихся, не нарушая упорядоченности;

    • показать содержимое таблицы учащихся.

  • Для любого студента:

    • получить (вернуть в качестве результата) категорию учащихся;

    • занести оценки; получить (вернуть в качестве результата) перечень оценок.

  • Для старшекурсника:

    • занести тему УИР; получить (вернуть в качестве результата) информацию о теме УИР;

    • занести информацию о месте выполнения УИР; получить информацию о месте выполнения УИР

    • занести оценку руководителя; получить оценку руководителя.

  • Для приложения:

    • оформить поступление студента в институт (с записью количества дисциплин (оценок) первого семестра);

    • оформить перевод студента на новый семестр (добавление новой записи с возможным изменением статуса студента и записью количества дисциплин (оценок) нового семестра);

    • оформить ведомость семестрового контроля (внести оценки по всем дисциплинам и вывести итоговый документ);

    • определить средний балл для указанной учебной группы;

    • (*) получить отчёт обо всех «отстающих» студентах, у которых три и более двойки, в краткой форме, используя класс-итератор.

Порядок выполнения работы

  1. На основе описания задачи определить состав классов.

  2. Разработать иерархию классов и схему их взаимодействия.

  3. Для каждого класса определить его состояние и необходимые методы.

  4. Разработать и отладить все классы. Приложение реализовать в виде простой диалоговой программы.

  5. (*) Разработать и отладить класс, реализующий работу приложения. Предусмотреть в классе возможность сохранения таблицы в файле и ее восстановления.

  6. (*) Разработать и отладить класс-итератор, с помощью которого реализовать дополнительные операции.

Примечание: пункты задания, отмеченные (*), являются дополнительными.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]