[C#] Домашно Strings and Text Processing - 16 задача


5

Условие: 16.Write a program that reads two dates in the format: day.month.year and calculates the number of days between them.Example:

Enter the first date: 27.02.2006
Enter the second date: 3.03.2006
Distance: 4 days

Решениеsource.

Обяснение: Използваме готовия метод DateTime.Parse(), след което изваждаме датите и намираме броя на дните в този интервал.




Отговори



0
Ползваме DateTame.Parse, после нова променлива ТimeSpan и със функцията .Subtract() вадим дните.
http://pastebin.com/6rsQMx02

от hudsonvsm (25 точки)


1
Ето едно решение и от мен:
http://pastebin.com/EX2gCRJ1
Според условието трябва да сметнеш колко дни има между датите независимо от годината...Има едно property DateTime.DayOfYear което връща броят на дните изминали от началото на годината.Примерно 27.02. е точно 58-мия ден от годината,а 3.03 е точно 63-тия...Отговорът е 4 защото може би се предполага че колко трябва да броим само дните помежду им...
Enter the first date: 27.02.2006
Enter the second date: 3.03.2004
Distance: 4 days

от dada166 (1113 точки)


0
Точно така реших да подходя и аз, но ми дава 5 дни разлика. Установих, че се получава от това че едната година е високосна. От там идва въпрос дали пък не е грешен примера ??


0
При зададена дата 3.3.2004 хвърля Exception, акоето в условието не е опоменато че трябва да се въвежда с 0 отпред. Само едното М го така че да стане: string format = "d.M.yyyy";

от RANOPILE (1038 точки)


0

Моето решение не е пефектно, но става за дебъгване :)
Решение : http://pastebin.com/6rApV3u2
Иначе решението на колегата  dada166, чрез DayOfYear е интересно.