Описание класса для представления даты - C#
Формулировка задачи:
Доброго дня, не могли бы помочь разобрать в куске этого кода, а именно для чего это?
int datePart1 = GetDatePart(0); int datePart2 = GetDatePart(2);
public DateTime AddMonths(int months) { if (months < -120000 || months > 120000) throw new ArgumentOutOfRangeException("months"); int datePart1 = GetDatePart(0); int datePart2 = GetDatePart(2); int day = GetDatePart(3); int num1 = datePart2 - 1 + months; int month; int year; if (num1 >= 0) { month = num1%12 + 1; year = datePart1 + num1/12; } else { month = 12 + (num1 + 1)%12; year = datePart1 + (num1 - 11)/12; } if (year < 1 || year > 9999) throw new ArgumentOutOfRangeException("months"); int num2 = DaysInMonth(year, month); if (day > num2) day = num2; return new DateTime((ulong) (DateToTicks(year, month, day) + InternalTicks%864000000000L) | InternalKind); }
Решение задачи: «Описание класса для представления даты»
textual
Листинг программы
GetDatePart();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д