Сравнение дат - C# (179378)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Мне нужно получить разницу между датами, получаю я ее таким методом:
Листинг программы
  1. public void Compare(Airplane a1, Airplane a2)
  2. {
  3. if (airplanesArray == null)
  4. throw new Exception("Нет самолетов!");
  5. if (a1.DepartureTime > a2.DepartureTime)
  6. {
  7. int dYear = a1.DepartureTime.Year - a2.DepartureTime.Year;
  8. int dMonth = a1.DepartureTime.Month - a2.DepartureTime.Month;
  9. int dDay = a1.DepartureTime.Day - a2.DepartureTime.Day;
  10. int dHour = a1.DepartureTime.Hour - a2.DepartureTime.Hour;
  11. int dMin = a1.DepartureTime.Minute - a2.DepartureTime.Minute;
  12. int dSecond = a1.DepartureTime.Second - a2.DepartureTime.Second;
  13. Console.WriteLine("Разница между рейсом номер {0} и {1}: годы: {2}, месяца: {3}, дни: {4}, часы: {5}, минуты: {6}, секунды: {7}",
  14. a1.RaceNumber, a2.RaceNumber, dYear, dMonth, dDay, dHour, dMin, dSecond);
  15. }
  16. if (a1.DepartureTime < a2.DepartureTime)
  17. {
  18. int dYear = a2.DepartureTime.Year - a1.DepartureTime.Year;
  19. int dMonth = a2.DepartureTime.Month - a1.DepartureTime.Month;
  20. int dDay = a2.DepartureTime.Day - a1.DepartureTime.Day;
  21. int dHour = a2.DepartureTime.Hour - a1.DepartureTime.Hour;
  22. int dMin = a2.DepartureTime.Minute - a1.DepartureTime.Minute;
  23. int dSecond = a2.DepartureTime.Second - a1.DepartureTime.Second;
  24. Console.WriteLine("Разница между рейсом номер {0} и {1}: годы: {2}, месяца: {3}, дни: {4}, часы: {5}, минуты: {6}, секунды: {7}",
  25. a1.RaceNumber, a2.RaceNumber, dYear, dMonth, dDay, dHour, dMin, dSecond);
  26. }
  27. }
Возможно, изобрел велосипед. Возможно ли как-то минимизировать код сравнения?

Решение задачи: «Сравнение дат»

textual
Листинг программы
  1. var dtnow = new DateTime(2017, 1, 2);
  2. var dt = new DateTime(2017, 1, 1);
  3. var diff = new DateTime((dtnow - dt).Ticks);
  4. Console.WriteLine($"{diff.Year} {diff.Month} и тд"); // 1 год 1 месяц и т.д.
  5. Console.ReadKey(true);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.417 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут