Структуры и классы
Тип данных должен быть
реализован в виде класса с указанными закрытыми полями, где операции
реализуются в виде открытых методов класса. Требуется реализовать тип данных с
помощью класса. Во всех заданиях обязательно должны присутствовать:
·
Метод
инициализации Init(); метод должен контролировать значения аргументов на
корректность, при некорректных значения выводить сообщение No
и заканчивать работу с этим экземпляром;
·
Ввод с клавиатуры
Read();
·
Вывод на экран Display(), в
котором выводятся поля экземпляра и результат вычислений специфического метода;
В головной функции требуется
создать один статический экземпляр описанного типа и массив из n динамических
экземпляров этого типа и вызвать для каждого из этих экземпляров все
перечисленные методы в указанном порядке.

Формат входных данных.
Ввод: две
тройки значений параметров статических объектов, затем число дней для
добавления/уменьшения, после этого число реализаций для пар динамических объектов и данные
параметров динамических объектов.
Вывод:
исходные данные объектов по формату:
<год>
.<месяц>. <день> JDN=<юлианский
день>,
затем результаты применения
специфических методов к статическим объектам и сравнение дат, затем исходные
данные и результаты специфических методов динамических объектов.
Пример входных данных:
2003 5 9 2005 9 22 5
3
2010 5 5 2008 3 4 15
2005 12 30 2005 12 30 10
2004 2 21
2004 2 28 1
Пример выходных данных:
2003. 5. 9 JDN=2452769
2003. 5.14 JDN=2452774
2003. 5. 4 JDN=2452764
2005. 9.22 JDN=2453636
2005. 9.27 JDN=2453641
2005. 9.17 JDN=2453631
867 days
less
2010. 5. 5 JDN=2455322
2010. 5.20 JDN=2455337
2010. 4.20 JDN=2455307
2008. 3. 4 JDN=2454530
2008. 3.19 JDN=2454545
2008. 2.18 JDN=2454515
792 days
greate
2005.12.30 JDN=2453735
2006. 1. 9 JDN=2453745
2005.12.20 JDN=2453725
2005.12.30 JDN=2453735
2006. 1. 9 JDN=2453745
2005.12.20 JDN=2453725
0 days
equal
2004. 2.21 JDN=2453057
2004. 2.22 JDN=2453058
2004. 2.20 JDN=2453056
2004. 2.28 JDN=2453064
2004. 2.29 JDN=2453065
2004. 2.27 JDN=2453063
7 days
less