Реализовать класс «Массив – геометрическая прогрессия». Поля: первый элемент, знаменатель, указатель на массив, в котором хранятся первые элементы последовательности и его размерность. Конструкторы: конструктор для инициализации полей (массив — прогрессия передается через параметры). При необходимости добавить свои функции. При недопустимых параметрах объекта создается исключение (массив не является заданной геометрической прогрессией). Для исключения создать класс, производный от invalid_argument. Дополнительно созданный класс для исключения кроме наследуемых полей (необходимо их также использовать) содержит поля класса «Массив – геометрическая прогрессия» для недопустимого объекта и метод для печати всех данных. Продемонстрировать работу с объектами в случае возникновения исключения и его обработки и без возникновения исключения.