Zeller's Formula:
For the Gregorian calendar, Zeller's Formula is
\[\displaystyle W=\left(\left\lfloor \frac{C}{4} \right\rfloor -2C+Y+\left\lfloor \frac{Y}{4} \right\rfloor +\left\lfloor \frac{26(M+1)}{10} \right\rfloor +D-1\right)\bmod 7. \]
Where
- \(W\): the day of week. (\(0 =\) Sunday, \(1 =\) Monday, ..., \(5 =\) Friday, \(6 =\) Saturday)
- \(C\): the zero-based century. (actually \(\lfloor \text{year}/100\rfloor\approx \text{century}-1\))
- \(Y\): the year of the century. (\(\approx\text{year}\bmod 100\), \if $M=1,2 \text{ then } (\text{year}-1)\bmod 100} $)
- \(M\): the month. (\(3 =\) March, \(4 =\) April, \(5 =\) May, ..., \(14 =\) February)
- \(D\): the day of the month.
NOTE: In this formula January and February are counted as months 13 and 14 of the previous year. E.g. if it is 2010/02/02, the formula counts the date as 2009/14/02.
For the day before 1582/10/15, notice that the time period from 1582/10/05 to 1582/10/14 does not exists. So for the day before 1582/10/15, the formula is
\[\displaystyle W=\left(\left\lfloor \frac{C}{4} \right\rfloor -2C+Y+\left\lfloor \frac{Y}{4} \right\rfloor +\left\lfloor \frac{26(M+1)}{10} \right\rfloor +D+3 \right)\bmod 7.\]