Лабораторная работа 2 ООП
.docЛабораторная работа №2 по курсу «Объектно-ориентированное пограммирование»
Тема работы: Наследование и полиморфизм
Цель работы: научиться строить иерархии классов и использовать виртуальные функции при разработке программного обеспечения
Порядок выполнения работы: Во всех заданиях, помимо указанных в задании операций, обязательно должны быть реализованы следующие методы:
-
метод инициализации Init();
-
ввод с клавиатуры;
-
Вывода в поток;
Варианты заданий:
-
Создать базовый класс Фигура с виртуальными методами вычисления площади и периметра. Создать произвольные классы Прямоугольник и Трапеция со своими функциями площали и периметра.
-
Создать абстрактный класс Solid (тело) c абстрактными методами вычисления площади поверхности и объема. Создайте производные классы parallelepiped и ball со своими функциями.
-
Создать абстрактный класс для описания треугольника с виртуальными функциями вычисления площади и периметра.Пеализовать производные классы равнобедренный, равносторонний, прямоугольный.
-
Создать базовый класс Number с виртуальными арифметическими операциями и операциями вывода на экран. Определить проихводные классы Decimal и Binary реализующие собственные операции. Число представляется массивом, каждуй элемент которого – цифра.
-
Создать абстрактный базовый класс Series (прогрессия)с виртуальными методами вычисления j элемента прогресии и суммы k первых членов прогресии. Определить производные классы Linear (арифметическая) и Exponential (геометрическая).
-
Создать абстрактный класс Pair, описывающий пару чисел с виртуальными арифметическими операциями. Реализовать производные классы Money и Fraction.
-
Создать абстрактный класс Triad с виртуальными методами увеличения на 1 и сложения. Создать производные классы Date и Time.
-
Создать абстрактный класс Pair, описывающий пару чисел с виртуальными арифметическими операциями. Реализовать производные классы Complexи Rational.
-
Создать абстрактный класс Container с методами sort() и поэлементной обработки forEach(). Реальзовать класс Bubble в котором сортировка производится методом пузырька, а поэлементная обработка – извлечение квадратного корня, и класс Choice – сортировка методом выбора, а поэлементная обработка – поиск логарифма.
-
Создать абстрактный класс Array с методами сложения Add() и поэлементной обработки forEach(). Реальзовать производные классы SortArray и XorArray. В первом сложение реализуется как объединение множеств, а поэлементная обрабоотка – сортировка.Во втором классе – сложение как исключающее ИЛИ, а поэлементная обработка – возведение в квадрат.
-
Создать абстрактный класс Array с методами сложения Add() и поэлементной обработки forEach(). Реальзовать производные классы AndArray и OrArray. В первом сложение реализуется как пересечение множеств, а поэлементная обрабоотка – извлечение квадратного корня. Во втором классе – сложение как объединение, а поэлементная обработка – поиск синуса.