E-mail
Craig Ricks, craig@craigricks.com,
for specific
questions or comments.
Since we
know that weekdays repeat every seven days, we need to find a way to
simplify them. Using the above number list, you know that Monday
is a 1. Monday can also be an 8, 15, etc. You can always
divide any number by
7, ignore the result, and use the remainder (also known as modulo).
15 would be Monday, 27 = Saturday, 37 = Tuesday, 21 = Sunday,
etc. You will use this method at the end to determine the actual
day of the week.
(15 modulo 7 = 1) (27 mod 7 = 6) ( 37 mod 7 = 2) (21 mod 7 =
0).
Month
Numbers (learn these well):
January = 0, February = 3,
March = 3, April = 6, May = 1, June = 4, July = 6, August = 2,
September = 5, October =
0, November = 3, December = 5
These
are calculated based on January 1st being a Monday. For instance,
January
1 (1 mod 7 = 1) would be Monday. January 20 (20 mod 7 =
6) would be a Saturday. January 31 (31 mod 7 = 3) would be a
Wednesday.
You would need to think of February 1 as 32
since it is the 32nd day of the year (32 mod 7 = 4,
Thursday). However, the numbers start getting pretty high each
month and they are harder to think of as you go. This is why
the numbers above, in the MonthNumbers list, are used (i.e. 3 for
February). If we think of February as 3 and add 1 (for February
1), we get 4 (Thursday).
To find the day
for February 5, we'd take 3 + 5 = 8, 8 mod 7 = 1, Monday
To find the day for
September 20, we'd take 5 + 20 = 25, 25 mod 7 = 4, Thursday
To find the day for
June 7, we'd take 4 + 7 = 11, 11 mod 7 = 4, Thursday
Adjusting
for the Year:
Since
each year doesn't start on a Monday, we need to adjust for the
year. It is
best to learn the century method after
you have the current century completely learned. There is a formula
you can use for the year -- take the last two digits of the year,
divide by 4, drop the remainder, add the result back to the last two
digits of the year, now modulo (look at remainder only and not actual
result) that by 7... However, the fastest way would be to
memorize
some of the numbers for some of the most recent years.
To help learn the years, you
could perhaps learn 25 of them -- every leap year -- such as
2000, 2004, 2008, 2012, etc. and then you if you are asked for the
year 2005, you can use the number for 2004 plus an additional 1.
Notice
that each leap year increases one more from the previous year.
1995
= 6, 1996 = 1, 1997 = 2, 1998 = 3, 1999 = 4, 2000 = 6 (or
-1), 2001 = 0, 2002 = 1,2003 = 2,
2004 = 4, 2005 = 5,
2006 = 6, 2007 = 0, 2008 = 2, 2009 = 3
Click here for the
complete details of "Determinig
the Day of the Week in Other Years".
Putting
it all together:
Take the number of the month + day + number
for the year and then mod 7 to get the weekday. Be aware
that you have to subtract 1 from the final result when calculating a
date on a leap year
that is in January or February.
March
1, 2002 (3 + 1 + 1 = 5) = Friday
July
7, 2003 (6 + 7 + 2 = 15....15 mod 7 = 1) = Monday
February 20,
2000 (3 + 20 + 6 - 1 [leap year] = 28, 28 mod 7 = 0) = Sunday
October 15,
2004 (0 + 15 + 4 = 19, 19 mod 7 = 5) = Friday
May 19, 4536 (1 + 19 - 3 + 3 = 20, 20 mod 7 = 6) = Saturday
June 17, 2345 (4 + 17 + 0 + 0 = 21, 21 mod 7 = 0) = Sunday