Did you ever have to look up what day of the week it will be on a certain date in the future? Do you wonder if you will be able to attend a birthday or wedding at a certain date? Do you want to know if you have to work during an upcoming holiday?
Or you want to know on which day of the week you were born?
A while ago I saw a video of Kim Peek, a megasavant with a developmental disorder who among other things could instantly tell which day of the week it was on any given date in the past. A little while later I saw another guy do it during a TED talk and I thought it was pretty impressive.
After that I was curious and started to google around on the subject. I found out that there are different methods and algorhythms using only mental calculations to do this. I played around with it and after a while I was able to determine days of the week for any given date within 30 seconds. “Easier” dates requiring less steps can easily be done within 10 seconds. With more practice you can do it faster and faster.
I really like it as an additional skill in my daily life, so I thought I would make this guide for 2 reasons. The 1st reason is to share it with you guys and gals so you can use it for your own convenience or even to impress your friends. The 2nd reason is to help me understand and memorize the method better as I explain it.
The following method I think is the easiest to use.
Step 1
The first step is to make March the 1st month of the year. Januari and Februari will be month 11 and 12. This is to circumvent the annoyingness of leapyears which will otherwise cause difficulty in your calculations.
Step 2
After the 1st step the days of the year will have a fixed pattern, which will be very easy to remember. There are distinctive dates which will always share the same day of the week:
- April 4th
- June 6th
- August 8th
- Oktober 10th
- December 12th
See the pattern here? The 4th day of the 4th month, the 6th day of the 6th month, etc.
For the remaining months there are easy mnemonics:
“From 9 to 5” : September 5th and May 9th
“ Seven eleven”: July 11th and November 7th
The remaining 3 months will require a bit of memorizing: Januari 9th, Februari 6th and March 7th.
All the above dates share the same day of the week!
Step 3
The day of the week which all the above dates share will be called “Day 0” from now on.
Memorize that Day 0 of the year 2000 is a Tuesday. So all the above dates from March 2000 to Februari 2001 are a Tuesday! (Remember that we started to count from March, so Januari and Februari 2000 belong to the previous year).
Step 4
So now all we have to do is learn to determine Day 0 of a given year.
For that I will give a little background on how the Gregorian calendar works, which was first introduced in 1582.
Every year that can be devided by 4, and not by 100 is a leapyear. Exceptions to this rule are years which can be devided by 400, which are all leapyears.
So 1900 is not a leapyear. 1904, 1908, 1912, 1916, etc are leapyears. 2000 is a leapyear.
Step 5
Now the list of rules:
Rule 1:
Every year Day 0 will jump forward 1 day, and every leapyear Day 0 will jump forward 2 days.
We memorized that Day 0 of 2000 was a Tuesday, so Day 0 of 2001 was Wednesday, Day 0 of 2002 was a Thursday etc.
Rule 2:
Another trick to remember is to determine Day 0 of any given century:
Too Sunny For Work (Tuesday, Sunday, Friday, Wednesday)
Day 0 of 2000 was a Tuesday, so this means that 2100 will be a Sunday, 2200 a Friday, etc. If we count backwards we will see that Day 0 of 1900 was a Wednesday.
Rule 3:
What follows is that every 12 years after the start of a given century the day of the week will jump forward 1 day.
(1900: Day 0 = Wednesday, 1912: Day 0 = Thursday, etc)
Rule 4:
Also every 4 years after the start of the century the day of the week will jump backwards 2 days.
This is all you need to know to be able to determine the day of the week for any given date.
Lets try some examples:
Lets start with figuring out the day of the week Albert Einstein was born. The date was March 14th 1879.
- First we determine Day 0 of the year 1800 with the 2nd rule of step 5: Friday.
- Using the 3rd rule we make steps of 12 years to get close to the date. In this case its 6x12 => 1872. We now know that Day 0 of 1872 is a Thursday. (Friday + 6 days, or Friday – 1 day)
- Now we use the 4th rule to go even closer to the given date: 1872 + 4 = 1876
Day 0 of 1876 = Tuesday (Thursday – 2 days) - 3 years later, in 1879, Day 0 will be a Friday (Use the 1st rule)
- Now we know from step 2 that March 7th is a Friday. Therefore March 14th is also a Friday, and there is your answer: Albert Einstein was born on a Friday!
Now try this one: Februari 22nd 2021. I’ll put the answer in spoiler tags.
+ Show Spoiler +
- Day 0 of 2000 = Tuesday
- Remember that the month Januari and Februari belong to 2020 with our way of counting.
- Day 0 of 2012 = Wednesday
- Day 0 of 2020 = Saturday (count back 4 days or forward 3 days)
- Februari 6th = Saturday (see step 2)
- Februari 20th is also a Saturday (+14 days), so Februari 22nd 2021 is a Monday!
At first it might seem like a lot of steps, but you will soon find out that the more you practice the faster it goes because you will be more familiar with its pattern. After that you can even leave steps out or find other ways that work better for you.
Here are the sources if you want to know more:
Gregorian_calendar
Calculating_the_day_of_the_week#Mental_calculation
Kim_Peak
http://www.ted.com/talks/lang/eng/arthur_benjamin_does_mathemagic.html
Also if you want to practice more, you can use wolframalpha to see if your answer is correct. Just type in the date and it will give the day of the week among other data.
EDIT: Meh, I should have posted this as my 100th post... ah well