Тема: **Объектно-ориентированное программирование на языке С++** **Задание:** 1. Разработать иерархию родственных типов, корневой класс которой - абстрактный базовый класс, для моделирования и обработки данных предметной области согласно варианта А.х.х 2. Создать обобщенный контейнерный класс (базовый) и от него, используя закрытое наследование, производный класс – шаблон для хранения указателей на абстрактный базовый класс согласно варианта В.х. 3. Для хранения объектов каждого производного класса использовать структуру данных согласно варианта С.х. 4. Реализовать функции обработки данных (сортировка и поиск по выбранным полям и задаваемым диапазонам значений, другие функции, в том числе перегруженные). 5. Реализовать файловый ввод/вывод и ввод данных с клавиатуры, вывод данных на дисплей. 6. Предусмотреть обработку различных исключительных ситуаций. 7. Работа всех функций должна быть проверена и результаты проверки оформлены протоколом тестирования. В части 1 – для создания иерархии родственных типов могут использоваться механизмы как одиночного, так и множественного наследования, рекомендуемое количество уровней иерархии: 3-4. В части 2 – число элементов контейнерного класса определяется количеством производных классов иерархии, объекты которых будут создаваться для хранения данных предметной области. В части 3 – количество объектов производных классов задается необходимым для тестирования функций обработки данных. В части 4 – необходимо предусмотреть полиморфную обработку родственных объектов. Оформление пояснительной записки должно выполняться в соответствии с Указаниями к выполнению курсового проекта (работы). Вариант А11 - В2 - С8 А11. Устройства передачи данных В2. Динамический вектор С8. Очередь