Вот что я пытаюсь сделать:
Учитывая дату, день недели и целое число n
, определите, является ли дата n
-ным днем месяца.
Например:
-
ввод
1/1/2009,Monday,2
будет ложным, потому что1/1/2009
не является вторым понедельником -
ввод
11/13/2008,Thursday,2
вернет true, потому что это второй четверг
Как я могу улучшить эту реализацию?
private bool NthDayOfMonth(DateTime date, DayOfWeek dow, int n)
{
int d = date.Day;
return date.DayOfWeek == dow && (d/ 7 == n || (d/ 7 == (n - 1) && d % 7 > 0));
}