eolymp

Class data

Написати клас Data (дата), що містить поля - день, місяць, рік.

Реалізувати конструктори:

  • конструктор по замовчуванню, що надає даті значення 01.01.1900;

  • конструктор з параметрами, що отримує рядок типу char у вигляді дд.мм.рррр і ініціалізує відповідні поля;

  • конструктор з параметрами, що отримує три цілі значення типу int(день, місяць, рік) і ініціалізує відповідні поля.

Якщо під час ініціалізації дата не відповідає дійсності вивести "Error data..." і перехід на новий рядок. Якщо дата не правильна надає значення 01.01.1900;(Рік можливий від 0 до 2050 ).

Реалізувати методи які:

  • void setDay(int) - який змінює значення дати класу;

  • void setMonth(int) - який змінює значення місяця;

  • void setYear(int) - який змінює значення року класу;

  • bool verifikation() - яка перевіряє коректність дати і повертає (true/false) відповідно (правильна/ неправильна). І якщо дата не правильна надає значення 01.01.1900;

  • void OutDataddmmyy() - виводить дату у форматі дд.мм.рр, наприклад 02.03.19;

  • void OutDataddmmyyyy() - виводить дату у форматі дд.мм.рррр, наприклад 02.03.2019;

  • void OutDataddMonthyyyy() - виводить дату у форматі дд місяць рррр, наприклад 02 March 2019.

Місяці виводити англійською мовою відповідно:

January, February, March, April, May, June, July, August, September, October, November, December.

Тестування

Тест 1. Перевірка конструктора по замовчуванню та метод OutDataddmmyy().

Тест 2-5 Перевірка конструктора з параметром тримує рядок типу char у вигляді дд.мм.рррр та методів verifikation(), OutDataddmmyy(), OutDataddmmyyyy(), OutDataddMonthyyyy()

Тест 6 Перевірка конструктора з параметрами, що отримує три цілі значення типу int(день, місяць, рік) та методів verifikation(), OutDataddmmyy(), OutDataddmmyyyy(), OutDataddMonthyyyy()

Тест 7 Перевірка конструктора по замовчуванню та методів setDay(..), setMonth(..) setYear(..) verifikation(), OutDataddmmyy(), OutDataddmmyyyy(), OutDataddMonthyyyy()

Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB