How to Find the Day of the Week in Any Year of the Twentieth or Twenty-First Century
Let D = the difference between the year numbers.
Let L be the day of the week in the later year of the day that has the same date as the day that you seek in the earlier year modulo 7 where Monday is 1.
Let E be the day of the week of the day you seek in the earlier year modulo 7.
Let G equal the greatest integer in D/4*.
Let S equal the quantity (G + δ) modulo 7 where δ is obtained from the table below:
Earlier year \ Later year |
Not leap year |
Before leap day |
After leap day |
Not leap year |
0 |
0 |
1 |
Before leap day |
1 |
0 |
X |
After leap day |
0 |
X |
0 |
The table is not needed if we remember that, if the earlier year is a leap year and the day is before leap day or if the later year is a leap year and the day is after leap day, δ = 1. Otherwise, δ = 0.
E is the number of the day of the week with Monday equal to 1.
The day of the week of the earlier year is found from the equation E = L – S – D mod 7.
For example, my birthday was March 24, 1934. March 24 is a Saturday this year, which is a 6. I will be 73, so Δ = 73. Neither 1934 nor 2007 is a leap year, so δ = 0.
S = [GINT(73/4) + 0] (mod 7) = 4
and
E = L – S – D (mod 7) = 6 – 4 – 3 = 6,
which is a Saturday.
*Note: Unfortunately, 1900 was not a leap year. My formula does not account for that, but it is easily remedied. See http://www.jimloy.com/math/day-week.htm.