Как работает следующий алгоритм? < /p>
enum DayOfWeek
{
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
};
static DayOfWeek GetDayOfWeek(unsigned int year, char month, char day) {
char monthTable[] = { 0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4 };
year -= (unsigned int)((month < 3) ? 1 : 0);
return (DayOfWeek)((year + year / 4 - year / 100 + year / 400 + monthTable[month - 1] + day) % 7);
}
< /code>
Источник здесь < /p>
может кто -нибудь объяснить, почему он работает и как? < /p>
Подробнее здесь: https://stackoverflow.com/questions/334 ... -week-work