If you are interested in dates less than 1760 bear in mind the following.

The year 707 (46bc) contained 445 days (known as the year of confusion) this restored the Spring Equinox to 21 March and was the start of the Julian Calendar. By the 16th century the Spring Equinox had again shifted (from the 21st to the 10th). In 1577 the Gregorian Calendar was introduced (adopted 1582). In 1582 10 days were dropped after the 4th of Oct, the 15th being the next day.

Protestant countries did not adopt the Gregorian Calendar till the 18th Century (England 1752).

For dates before ~1760 you need to know which calendar was in use.

1983 is the second revolution of the Gregorian Calendar.

Every 100th year is not a leap year, only the fourth hundred. ie. 1600(leap) 1700(not) 1800(not) 1900(not) 2000(leap). Divisible by 400.

TO DETERMINE DAY OF THE WEEK Gregorian Calendar only

Month Keys Century Keys Day Keys
1 January (0 if leap) 17xx add 4 1 Sunday
4 February (3 if leap) 18xx add 2 2 Monday
4 March 19xx add 0 3 Tuesday
0 April 20xx add 6 4 Wednesday
2 May 21xx add 4 5 Thursday
5 June 6 Friday
0 July 0 Saturday
3 August
6 September
1 October
4 November
6 December

METHOD eg. for December 25 1958

1 Take last 2 figures of Year 58
2 Divide by 4 and discard remainder.
58 / 4 = 14.50 so 14
14
3 Take Month key number from Table 1 6
4 Take the Day number of the Month 25
5 Add the results of steps 1 - 4
58 + 14 + 6 + 25 = 103
103
6 Add Century key value from Table 2
103 + 0 = 103
0
7 Divide result from step 6 by 7. 14 with remainder of 5
103/7 do it by hand or 103mod7 or 103-(14*7)=5
5
8 Take the remainder and using Table 3 find corresponding Day
Christmas Day 1958 was (5) Thursday
5

JavaScript to determine Day of week from the above tables.

Note: Some browsers will show a calendar