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

Вариант 9 Учебный план

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

Описатель лекций содержит следующую информацию: объём часов по плану и наименование потока (перечень “индексов групп”); аннотация курса (строка символов); формы семестрового контроля (зачет и/или экзамен).

Описатель семинаров содержит следующую информацию: объём часов по плану и срок начала семинаров; формы промежуточного контроля (КР, ДЗ и др.).

Описатель лабораторных содержит следующую информацию: объём часов по плану; срок начала практикума и продолжительность занятия; количество лабораторий и перечень описателей лабораторий (от одной до двух). Описатель лаборатории – “индекс лаборатории” и вместимость.

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

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

  • Для таблицы дисциплин:

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

    • найти элемент по заданному шифру дисциплины;

    • удалить элемент, заданный шифром дисциплины;

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

  • Для дисциплины учебного плана:

    • вывести информацию о дисциплине;

    • изменить состав компонент дисциплины.

  • Для любого компонента дисциплины учебного плана:

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

    • вернуть количество часов; изменить количество часов;

    • показать информации о компоненте дисциплины.

  • Для лабораторных занятий:

    • изменить продолжительность занятия; изменить количество лабораторий; изменить “индекс лаборатории” и вместительность.

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

    • описать новую дисциплину учебного плана;

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

    • исключить дисциплину из учебного плана;

    • показать информацию о занятиях указанного типа.

    • (*) проверить корректность подсчёта объёма часов по каждой дисциплине, используя класс-итератор.

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

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

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

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

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

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

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

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

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