#1 Создать класс Динамический массив. Класс должен содержать конструкторы (по количеству элементов, по массиву и количеству элементов), в том числе конструктор копирования; деструктор; перегруженную операцию присваивания; функцию добавления элемента в конец массива и в заданную позицию; функцию удаления элемента из заданной позиции; функция подсчета количества вхождений заданного значения в массив. В классе должна быть предусмотрена операция помещения в поток и операция извлечения из потока элементов объекта. Динамический массив из элементов типа int дополнительно должен предусматривать возможность перегрузки: операции сложения (+) - поэлементное сложение (результат новый объект класса) операции умножения (*) - скалярное произведение векторов операций префиксного и постфиксного инкремента (++a, a++) – увеличение всех элементов на 1. функции модуля (abs) - длина вектора (не массива). #2 Создать класс-наследник* для класса Динамический массив из предыдущей лабораторной работы. Обеспечить корректное наследование, корректные конструкторы и деструкторы. *Класс Многочлен (элементы int) все операции: сложение, вычитание, домножение на число, добавление числа; обязательная перегрузка операций, считывание вектора из потока до нулевого элемента (перегрузка >>), перегрузка деления многочлена на многочлен.