09. Holidays Between Two Dates
Някой били обяснил подробно как се решава тази задача ?Аз поправих някакви неща но дори дебъгера ми не тръгва.
using System;
using System.Globalization;
class HolidaysBetweenTwoDates
{
static void Main()
{
DateTime startDate = DateTime.ParseExact(Console.ReadLine(),
"dd.MM.yyyy", CultureInfo.InvariantCulture);
DateTime endDate = DateTime.ParseExact(Console.ReadLine(),
"dd.MM.yyyy", CultureInfo.InvariantCulture);
int holidaysCount = 0;
for (DateTime date = startDate; date <= endDate; date.AddDays(1))
if (date.DayOfWeek == DayOfWeek.Saturday ||
date.DayOfWeek == DayOfWeek.Sunday) holidaysCount++;
Console.WriteLine(holidaysCount);
}
}
Сигурен ли си, че се изисква месеците да са двуцифрени, защото в условието пише : "given in format day.month.year (e.g. between 1.05.2015 and 15.05.2015 there are 5 non-working days – Saturday and Sunday).".
Оставям си кода тук. На мен това ми дава 100/100, не знам при вас как е.
Поздрави
Да, явно не пречи да напишеш и "01", след като е форматирано само с"М".
Благодаря за обяснението , оправих кода и най- важното разбрах какво правя и защо.Поздрави
http://pastebin.com/hbxmZcJd
ГОТОВО
Тука в тази задача е важно сама да стигнеш до отговорите !!!
Здравей, може ли да ми обясниш защо месеците са изписани с главно "'M". При мен кода изглеждаше по същият начин, но месеците ми бяха с малко 'm' и при въведена дата 16.07.2017 отчита 16.01.2017 - 6 месеца назад, като смених буквите се оправи, но не разбирам защо се получава така.
Много благодаря!
поне в c# -
MM == month,
mm == minutes
а от това колко са на брои зависи колко цифри приемат и предават
M => 1, 2, 3...
MM => 01, 02, 03...
MMM => Jan, Feb, Mar
MMMM => January, February, March ......
еквивалентно е за всички съкращения относно датата
при часовете е малко по различно но подобно
Благодаря! :)