1) Создать базовый класс с тремя целыми полями. Разработать два конструктора: первый – без параметров – заполняет поля случайными данными; второй – с тремя параметрами – конструктор копирования. Разработать метод: вывода полей. Создать свойства для доступа к полям (только чтение).
2) Класс «Квадрат на плоскости со сторонами, параллельными осям координат». Наследует базовый класс. Поля определяют: первые два числа — координаты левого верхнего угла, третье — длина стороны. Переопределить метод вывода. Методы: а) периметр; б) площадь; в) квадрат, симметричный данному относительно начала координат.
3) Класс «Время». Наследует базовый класс. Поля определяют часы, минуты, секунды. Два конструктора: без параметров – переопределяется конструктор базового класса (на данные накладываются ограничения, но они по-прежнему формируются случайно); с тремя параметрами – обращается к соответствующему конструктору базового класса. Методы: а) вывод (переопределить метод базового класса) – формат вывода ЧЧ:ММ:СС; б) сравнение (результат — «раньше», «позже», «равны»); в) умножение — умножить на натуральное число k (например, для 12:02:22 при умножении на 2 получим 00:04:44). Указание. Действие выполняем над временем в секундах и затем переводим обратно в часы, минуты, секунды, убрав целые сутки, если они прошли.