Prove there's a day of the week for each number in a year

Prove, or disprove, that each day of the week (Monday to Sunday), falls on every date number 1 to 30 in the space of a year.

I.e. Prove there is a Monday 1st, Tuesday 1st, ..., Sunday 1st in the time of a calendar year for each number 1-30.

Things to consider:

• Do leap years matter? Is it only true/untrue on leap years?
• As February has 28/29 days, does this affect anything? Perhaps such as the 30th?

(Note 31st has been excluded as there is only 7 in the space of a year)

This was a random thought I had earlier, and I managed to find a proof, but I'm sure a nicer proof is out there, so best proof will get the checkmark!

It is

always true regardless of leap year.

In my opinion the easiest argument is

The first of each month from May to November falls on different days of the week. Counting from May $$1$$st, these are days numbered $$1$$, $$32$$, $$62$$, $$93$$, $$124$$, $$154$$, $$185$$ (the partial sums of $$1+31+30+31+31+30+31$$), and these are all different residues modulo $$7$$ (namely $$1$$, $$4$$, $$6$$, $$2$$, $$5$$, $$0$$, $$3$$). Given that the first day of each of these months are on different days, any other date in these months also falls on all different days.

• I like your argument better than mine, though I'm not in complete agreement about the easiness of counting all the way up to 185 and then taking modulo seven instead of just looking at a(ny) calendar :-)
– Bass
Commented Jan 24 at 20:14
• @Bass Of course I just looked at a calendar and found 7 consecutive months with different first days, but IMO to actually prove it rigorously needs numbers (though it would be easier to work mod 7 throughout). Commented Jan 24 at 20:20
• This is very similar to the proof I found when seeing if there was a solution, I mapped the days with the numbers 0-6 from the mod 7. Very nice proof, +1! Commented Jan 24 at 20:56
• You can simplify the adding a bit if you do the modulo 7 operation on the months first. So you only consider the partial sums of 1 + 3 + 2 + 3 + 3 + 2 + 3. Commented Jan 25 at 10:51

To me, all is needed is to observe that, as @JaapScherphuis wrote,

The first of each month from May to November falls on different days of the week.

(February falls outside the range May-November so the above is always true regardless of leap years.)

This observation makes the following hypothesis true:

(1) "There is a Monday 1st, Tuesday 1st, Wednesday 1st, ..., Sunday 1st in the time of a calendar year."

From (1) we can infer:

(2) "There is a Tuesday 2nd, Wednesday 2nd, Thursday 2nd, ..., Monday 2nd in the time of a calendar year."

From (2) we can infer:

(3) "There is a Wednesday 3rd, Thursday 3rd, Friday 3rd, ..., Tuesday 3rd in the time of a calendar year."

... and so on, iterating until (30).

Let's start from the hardest case first, and check the 30th.

Given that the month lengths don't follow a mathematical pattern, we need to tabulate the dates and find how many days (modulo seven) have passed in the year so far by the 30th day of each month. Then, if we find at least one month for all numbers from 0 to 6, we have proven that indeed, each day of the week hits the 30th.

Let's use the common naming convention for the possible remainders modulo 7 (0-6) in this context, so we can employ the standard tabulation:

As we can see the 30th falls on 0-6 respectively on June, December, April, October, May, August and November. (January and February are notably not involved, so leap years don't matter.)

Given that we can get every remainder (modulo seven) for one number (30), we can naturally get them for any number smaller than 30 too, so the answer is

Yes, we get the every date number (except 31) on every day of the week, every year

The argument given in @JaapScherphuis' answer can be modified slightly if you know

the Doomsday rule which is an algorithm to determine the day of the week.

Note that the following seven days:

9-5 (May), 6-6, 11-7, 8-8, 5-9, 10-10, 7-11 (November) are all Doomsdays, falling on the same day of the week. They form day 5 up to and including 11 of the month, so if you know e.g. Doomsday is Thursday (in 2024) and need e.g. the 29th to be a Friday, you need the 8th to be a Friday as well, the 7th to be a Thursday, so you pick November.