Calendar Math

Sort:
xdfgm

What day of the week will May 12, 2034 be?
What day of the week was May 12, 1298?

The following algorithm will tell you.

(Note: all divisions, except where noted otherwise, are integer divisions, in which remainders are discarded.)

First figure out the values for \(a\), \(y\), and \(m\) -- variables to be plugged into a formula.

\(a = \frac{14 - month}{12}\)  (month = # of month, 1 for Jan, 2 for Feb, etc)

\(y = year - a\)   (year = the 4 digit year)

\(m = month + 12a - 2\)

Next, plug the values of y and m into the following formula to calculate the day:

\[ d = (day + y + \frac{y}{4}-\frac{y}{100}+\frac{y}{400}+ \frac{31m}{12}) \:mod \:7 \]

(Note: mod 7 means "modulo division." That is, take the remainder instead of the quotient as your answer. For example, 20 mod 3 = 2, because the remainder is 2.)

The answer you get for \(d\) will correspond to a day of the week as such:

0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday


Example: What day of the week will April 5, 2020 fall on?

First figure out \(a\), \(y\), and \(m\):

\(a = \frac{14-4}{12} = 0\)

(remember, it's integer division so remainders are discarded. 4 represents the month of April since it's the fourth month of the year.)

\(y = 2020 - 0 = 2020\)

\(m = 4 + 12(0) - 2 = 2\)

Now plug \(y\) and \(m\) into the \(d\) formula to calculate the day:

\[ d = (5 + 2020 + \frac{2020}{4} - \frac{2020}{100} + \frac{2020}{400} + \frac{31(2)}{12}) \: mod \: 7\] \[ d = (5 + 2020 + 505 - 20 + 5 + 5) \: mod \: 7 \] \[ d = 2520 \: mod \: 7 \] \[ d = 0\]

Note: 2520/7 = 360 with a remainder of 0.

Recall from above that 0 = Sunday. So April 5, 2020 will be a Sunday.

Osokor

Many years ago I see similar algorithm in detailed paper calendar.

xdfgm

It is the lowest common algorithm. There are several of these and simplest with a programmable calculator.

Osokor

Ok. Thanks for information, LouisaN.

Zobral

I am used to make this calculations myself and I  do not use this method but another one I myself developed.

It is a good thing to do in a social meeting ("Do you know which day of the week you were born?") but I have to admit it is  a little more restrict than this one presented by Louisa.

Abrazos.