Создание класса для работы с датой - C#
Формулировка задачи:
Задание 10. Самостоятельно изучите тип данных DateTime, на основе которого
необходимо создать класс для работы с датой. Данный класс должен содержать следующие
члены класса:
1) Поле
· DateTime data.
2) Конструкторы, позволяющие установить:
· заданную дату
· дату 1.01.2010
3) Методы, позволяющие:
· вычислить дату предыдущего дня;
· вычислить дату следующего дня;
· определить сколько дней осталось до конца месяца.
4) Свойство:
· позволяющее установить или получить значение поле класса (доступно для чтения и
записи)
· позволяющее определить является ли год высокосным (доступно только для чтения).
5) Индексатор, позволяющий определить дату i-того по счету дня относительно
установленной даты (при отрицательных значениях индекса отсчет ведется в обратном
порядке).
6) Перегрузку:
· операции !: возвращает значение true, если установленная дата не является последним
днем месяца, иначе false;
· констант true и false: обращение к экземпляру класса дает значение true, если
установленная дата является началом года, иначе false;
· операции &: возвращает значение true, если поля двух объектов равны, иначе false.
Продемонстрировать работу класса.
помогите срочно надо( не то с универа выпрут(всё это сделать в C#)
Решение задачи: «Создание класса для работы с датой»
textual
Листинг программы
class DateClass { DateTime date; public DateClass() { date = new DateTime(2009, 1, 1); } public DateClass(DateTime date) { this.date = date; } public DateTime PrevDay() { return date.Subtract(TimeSpan.FromDays(1)); } public DateTime NextDay() { return date.Add(TimeSpan.FromDays(1)); } public int DaysLeft() { return DateTime.DaysInMonth(date.Year, date.Month) - date.Day; } public DateTime Date { get { return date; } set { date = value; } } public bool IsLeap { get { return DateTime.IsLeapYear(date.Year); } } public static bool operator !(DateClass a) { return DateTime.DaysInMonth(a.Date.Year, a.Date.Month) != a.Date.Day; } public static bool operator true(DateClass a) { return a.date.Mоnth == 1; } public static bool operator false(DateClass a) { return a.date.Mоnth != 1; } public static bool operator &(DateClass a, DateClass b) { return a.Date.Equals(b.Date); } public override string ToString() { return date.ToString(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д