Умова:
Скласти опис класу для представлення дати. Передбачити можливість
установки дати та зміни її окремих полів (день, місяць, рік) з перевіркою
допустимості введених значень. В випадку недопустимих значень полів повинно
оброблятись виключення. Створити метод зміни дати на задану кількість днів,
місяців та років.
Ответы на вопрос:
Відповідь:
using System;
public class Date
{
private int day;
private int month;
private int year;
public Date(int day, int month, int year)
{
SetDate(day, month, year);
}
public void SetDate(int day, int month, int year)
{
if (!IsValidDate(day, month, year))
{
throw new ArgumentException("Недійсна дата");
}
this.day = day;
this.month = month;
this.year = year;
}
public void ChangeDate(int days, int months, int years)
{
int newDay = day + days;
int newMonth = month + months;
int newYear = year + years;
SetDate(newDay, newMonth, newYear);
}
private bool IsValidDate(int day, int month, int year)
{
// Виконати перевірки на допустимі значення дня, місяця і року
// Наприклад, перевірити, що день лежить в межах 1-31, місяць в межах 1-12 і рік не від'ємний
// Повернути true, якщо дата дійсна, інакше - false
}
}
Цей клас Date має конструктор для ініціалізації дати і метод SetDate для зміни дати з перевіркою її допустимості. Якщо введені значення недійсні, генерується виключення ArgumentException.
Також в класі є метод ChangeDate, який дозволяє змінити дату на задану кількість днів, місяців і років. Цей метод також використовує метод SetDate для перевірки та встановлення нової дати.
Будь ласка, зверніть увагу, що код потребує додаткової роботи, щоб виконувати всі необхідні перевірки на допустимі значення дати. Ви повинні додати відповідний код в метод IsValidDate для виконання цих перевірок.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
plenkinanatash19.02.2020 23:58
-
foorsik08.01.2022 20:14
-
Кукушка119922.12.2021 01:43
-
vikaberg13.06.2023 00:05
-
gosharybchinckyi27.07.2022 18:10
-
Георгий001502.07.2020 07:19
-
22879511112.06.2022 08:32
-
арддддпиааафрзд18.02.2022 15:40
-
artemazarenko24.04.2020 16:54
-
ilyavladimirov110.12.2021 22:34
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.