ЛАБОРАТОРНАЯ РАБОТА № 3.3.
Общая часть заданий для всех вариантов.
Написать программу, демонстрирующую работу с объектами двух типов: Т1 и Т2, для чего создать систему соответствующих классов.
Coздать заголовочные файлы, содержащие объявления
- абстрактного базового класса Polygon или Sphere
- производных классов Т1 и Т2 в зависимости от варианта.
В соответствующих cpp-файлах определить методы классов.
Каждый объект должен иметь идентификатор и одно или несколько полей для хранения состояния объекта.
Клиенту (функция main) должны быть доступны следующие основные операции (методы):
- создать объект
-удалить объект
-показать значение объекта
- прочие методы, зависящие от варианта.
Обеспечить доступ к методам через указатель на базовый класс.
Предусмотреть меню, позволяющее продемонстрировать заданные операции.
При необходимости в разрабатываемые классы добавляются дополнительные методы ( например, конструктор копирования, операция присваивания и т. д.)
Перечень типов объектов
Класс | Объект |
Triangle | Треугольник |
Quadrate | Квадрат |
Rectangle | Прямоугольник |
Tetragon | Четырехугольник |
Pentagon | Пятиугольник |
Перечень дополнительных операций (методов)
Операция (метод) | Описание |
Move ( ) | Переместить объект на плоскости |
Compare (T& ob1, T& ob2) | Сравнить объекты ob1 и ob2 по площади |
Is Intersect (T& ob1, T& ob2) | Определить факт пересечения объектов ob1 и ob2 (есть пересечение или нет) |
Is Include (T& ob1, T& ob2) | Определить факт включения объекта ob2 в ob1 |
Спецификация вариантов 1-10
Вариант | Т1 | Т2 | Операции (методы) |
1 | Triangle | Quadrate | Move ( ). Compare (T&. T&) |
2 | Quadrate | Pentagon | Move ( ). Is Intersect (T&. T&) |
3 | Triangle | Rectangle | Move ( ). Compare (T&. T&) |
4 | Triangle | Rectangle | Move ( ). Is Intersect (T&. T&) |
5 | Rectangle | Pentagon | Move ( ). Is Include (T&. T&) |
6 | Triangle | Tetragon | Move ( ). Compare (T&. T&) |
7 | Triangle | Tetragon | Move ( ). Is Intersect (T&. T&) |
8 | Triangle | Tetragon | Move ( ). Is Include (T&. T&) |
9 | Triangle | Pentagon | Move ( ). Compare (T&. T&) |
10 | Triangle | Pentagon | Move ( ). Is Intersect (T&. T&) |
Перечень типов объектов
Класс | Объект |
Pyramid | Пирамида |
Prism | Призма |
Cylinder | Цилиндр |
Globe | Шар |
Cone | Конус |
Перечень дополнительных операций (методов)
Операция (метод) | Описание |
Increase(double) | Увеличить размер |
Comparep (T& ob1, T& ob2) | Сравнить объекты ob1 и ob2 по площади |
Comparev (T& ob1, T& ob2) | Сравнить объекты ob1 и ob2 по объему |
Is Include (T& ob1, T& ob2) | Определить факт включения объекта ob2 в ob1 |
Спецификация вариантов 11-16
Вариант | Т1 | Т2 | Операции (методы) |
11 | Pyramid | Prism | Increase(double), Comparep (T&. T&) |
12 | Cone | Cylinder | Increase(double), Comparev (T&. T&) |
13 | Cylinder | Globe | Increase(double), Comparep(T&,T&) |
14 | Globe | Cone | Increase(double), Comparev (T&. T&) |
15 | Prism | Cylinder | Increase(double),Is Include (T&. T&) |
16 | Cone | Prism | Increase(double),Comparep (T&. T&) |


