§ 2. Классы

Упражнения

 

1. Разделите объявление и определение класса Student (примеры 2.1 и 2.3), создав файлы Student.h и Student.cpp.

2. Добавьте для базового класса, описанного в примере 2.6, в качестве наследников трапецию и параллелограмм. Опишите для них методы вычисления площадей.

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

4. Создайте класс Parallelepiped (прямоугольный параллелепипед). Конструктор принимает длины ребер. Реализуйте функции вычисления площадей основания и боковых граней, объема, длин диагоналей параллелепипеда и диагоналей основания и боковых граней. Сделайте проверку на то, что параллелепипед является кубом.

5. В отделе кадров информация о работниках хранится в следующем виде: фамилия и инициалы, название занимаемой должности, дата поступления на работу. Выведите в алфавитном порядке тех работников, стаж работы которых больше введенного значения на текущую дату (дата вводится). Опишите класс Worker, в котором должен быть реализован метод, вычисляющий стаж работы.

6. Создайте класс Rect для прямоугольников со сторонами, параллельными осям координат. Реализуйте перемещение прямоугольника на плоскости (по горизонтали, по вертикали, в направлении вектора), изменение размеров.