Every calendar problem is mod 7 arithmetic. Days repeat every 7, so only the remainder — odd days — matters. Count odd days from a reference, mod 7, map to weekday.
Odd Days = Total Days mod 7 — remainder after dividing by 7.
| Type | Days | Odd Days |
|---|---|---|
| Ordinary year | 365 =52×7+1 | 1 |
| Leap year | 366 =52×7+2 (Feb 29) | 2 |
100 years = 76 ordinary +24 leap → 76×1 +24×2=124 days →
124 mod7=5 odd days.
| Period | Calculation | Odd Days |
|---|---|---|
| 100 years | 76×1+24×2=124 → 124 mod7 | 5 |
| 200 years | 5×2=10 → 10 mod7 | 3 |
| 300 years | 5×3=15 → 15 mod7 | 1 |
| 400 years | 5×4+1 extra leap =21 → 21 mod7 | 0 |
400-year rule: any multiple of 400 years (400,800,1200,1600,2000,2400) → 0 odd days. So 1600 years =0, 2000 years =0, etc.
| Month type | Days | Odd days |
|---|---|---|
| 31-day (Jan,Mar,May,Jul,Aug,Oct,Dec) | 31=28+3 | 3 |
| 30-day (Apr,Jun,Sep,Nov) | 30=28+2 | 2 |
| February | 28 or 29 | 0 (ordinary) / 1 (leap) |
"Same Day" rule: In an ordinary year, Jan1 and Dec31 are same weekday; in a leap year, Dec31 is one day ahead of Jan1 (because Feb adds 1 odd day before December).
A year's calendar repeats when cumulative odd days since that year ≡0 mod7.
| If year is… | Repeats after | Example |
|---|---|---|
| Leap year | 28 years | 2024 → 2052 |
| Leap year +1 | 6 years | 2025 → 2031 |
| Leap year +2 | 11 years | 2026 → 2037 |
| Leap year +3 | 11 years | 2027 → 2038 |
leaps = ⌊remaining/4⌋ − centuries correction → total odd days =
(ordinary×1 + leaps×2) mod7 or simply (remaining + leaps) mod7.
| Symbol | Meaning |
|---|---|
Y |
Total years |
L |
Number of leap years in period |
O |
Number of ordinary years |
Total Odd = 1×O +2×L |
All periods mod7 |
Century codes |
100→5, 200→3, 300→1, 400→0 |
Odd days for total days N is?
Ordinary year has how many odd days?
Leap year has how many odd days?
1900 is leap?
100 years has how many odd days?
400 years has how many odd days?
31-day month has how many odd days?
Leap year calendar repeats after?
Odd days ⇒ total mod7 ; 0→same weekday
Ordinary 365→1 ; Leap 366→2 (Feb 29)
Leap: non-century /4 ; century /400 (1900×, 2000✓)
100y→5 ; 200y→3 ; 300y→1 ; 400y→0 (multiples of 400→0)
Months: 31→3, 30→2, Feb 0/1 ; same-day rule: ordinary Jan1=Dec31, leap Dec31+1
Repetition: leap→28, +1→6, +2→11, +3→11
Ref Jan1 0001 Mon (0=Sun) ; break years into 400/100/remainder ; leaps=⌊rem/4⌋ ; total=(rem+leaps) mod7 ; add monthly odds → final mod7 → weekday
Primary source: none pinned yet — drop your preferred video/book resource into RESOURCES.md and it will be linked here. Ask me anything that's unclear.
Questions? Ask your agent — you can follow up on any concept, quiz answer, or get extra practice problems tuned to this module.