暦を割り算で読む:うるう年と曜日の剰余計算
7日周期と400年周期を手がかりに、日付から曜日を求める。うるう年の例外、日数の数え方、歴史上の暦と現行のグレゴリオ暦の違いも整理する。
- グレゴリオ暦のうるう年を4・100・400による割り切れ方で判定できる
- 日付間の日数を数え、7で割った余りから曜日の移動を求められる
- 400年間のうるう年の回数と曜日周期を計算で説明できる
- 現在の暦の規則を過去へ延長した計算と、当時実際に使われた暦を区別できる
📑 目次
1.暦には「天体の周期」と「数える規則」がある
太陽暦は季節の巡りに年を合わせようとする暦です。しかし季節が一巡する長さは整数日ではないので、毎年を365日だけにすると少しずつ季節と日付がずれます。グレゴリオ暦では平年を365日、うるう年を366日として調整します。一方、曜日は日・月・火・水・木・金・土の7日周期です。年や月の区切りで曜日がリセットされることはありません。
2.「4年ごと」だけでは決まらない
- 西暦年が400で割り切れるなら、うるう年。
- 400では割り切れず、100で割り切れるなら、平年。
- 100では割り切れず、4で割り切れるなら、うるう年。それ以外は平年。
例外の例外を先に調べる順番です。うるう年では2月が29日、平年では28日になります。他の月の日数は同じです。「100の倍数はすべて平年」とすると400の倍数を取り違えます。
| 西暦年 | 割り切れ方の確認 | グレゴリオ暦での判定 |
|---|---|---|
| 2024 | 2024=4×506、100の倍数ではない | うるう年 |
| 2025 | 2025=4×506+1 | 平年 |
| 2100 | 2100=100×21=400×5+100 | 平年 |
| 2400 | 2400=400×6 | うるう年 |
現行のグレゴリオ暦の規則が続くとして、2096年の次のうるう年と、その間隔を求めよう。
解答・解説
2104年で、8年後です。2097〜2099年は4の倍数でなく、2100年は100で割り切れるが400で割り切れないため平年。2101〜2103年も4の倍数でなく、2104年は4の倍数かつ100の倍数でないためうるう年です。うるう年の間隔は常に4年ではありません。
3.曜日は7で割った余りだけ動く
ある月曜日から14日後も月曜日、16日後は水曜日です。16=7×2+2なので、2週間の部分を取り除いて2日だけ進めればよいのです。整数を割った余りを「剰余」と呼びます。ここでは余りを0以上7未満にそろえます。
Dは基準日からの日数です。記号「≡」と「mod 7」は「7で割った余りが同じ」を表します。曜日にも日曜0・月曜1・火曜2・水曜3・木曜4・金曜5・土曜6と番号を付ければ、基準の番号にDを足して7で割った余りが目的の曜日番号になります。たとえば金曜日から10日後は5+10=15=7×2+1なので月曜日です。
2024年1月1日(月曜日)から100日後は何曜日か。日付も求めよう。
解答・解説
100=7×14+2なので、月曜日から2日進めて水曜日です。2024年はうるう年なので、1月1日から4月1日までは31+29+31=91日。残り9日進めて4月10日になります。したがって2024年4月10日、水曜日です。1月1日を「1日目」とした100日目とは違い、100日後は基準から100回日付が変わった日です。
4.日数の数え方が、曜日計算のかなめ
| 月 | その月の日数 |
|---|---|
| 1・3・5・7・8・10・12月 | 31日 |
| 4・6・9・11月 | 30日 |
| 2月 | 平年28日、うるう年29日 |
1月1日から同じ年のm月d日までなら、m月より前の月の日数の合計に「d−1」を足します。dを足すと1日数え過ぎます。たとえば1月1日から1月1日までは0日、1月2日までは1日です。年をまたぐときは、途中の年の日数も足します。
2024年1月1日(月曜日)を基準に、3月1日の曜日を求めよう。
解答・解説
3月より前の1月と2月を足し、当月分は1−1=0日。D=31+29+0=60日で、60=7×8+4です。月曜日から4日進むので金曜日。平年と同じつもりで2月を28日とすると、木曜日という誤答になります。
5.400年後のカレンダーはなぜ同じ配置か
🔍 2001年から2400年までの400年間で数える
- 4の倍数の年を候補にする
2004年、2008年、…、2400年の100回です。
- 100の倍数を除き、400の倍数を戻す
2100・2200・2300・2400年の4回をいったん除き、2400年の1回だけを戻します。
- 400年間の総日数を7で割る
総日数が7の倍数なので、2001年1月1日と2401年1月1日は同じ曜日です。
- 暦の1年の平均日数
単位は日。この平均は暦の規則から得られる正確な値で、各年が365.2425日になるという意味ではありません。
年に400を足しても4・100・400での割り切れ方は変わらないので、うるう年の配置も繰り返します。したがって現行の規則を保つ限り、400年後には同じ月日の曜日も一致します。ただし祝日や行事の日程まで同じとは限りません。また、この暦の平均年と天文学的な季節の周期は完全には一致しないため、曜日の周期が正確でも季節とのずれが永久にゼロになるわけではありません。
6.現行規則を歴史上の記録にそのまま当てない
米国海軍天文台の暦の解説では、グレゴリオ暦の導入は1582年とされています。それ以前からあるユリウス暦の基本規則は4年に1回のうるう年で、グレゴリオ暦の100年・400年の例外とは異なります。たとえば1900年は、グレゴリオ暦なら平年ですが、ユリウス暦の規則ならうるう年です。二つの暦は同じ年号でも同じ日付の対応になるとは限りません。
練習:規則・区間・余りを分けて考える
グレゴリオ暦で2200年と2800年はそれぞれ平年か、うるう年か。
解答・解説
2200年は平年。2200=100×22だが400×5+200なので400では割り切れません。2800年はうるう年。2800=400×7だからです。100の倍数というだけでは同じ判定になりません。
水曜日から45日後は何曜日か。基準日を0日後として数える。
解答・解説
土曜日。45=7×6+3なので、水曜日から木・金・土と3日進めます。曜日番号でも3+45=48=7×6+6となります。
2024年1月1日が月曜日であることから、2025年1月1日の曜日を求めよう。
解答・解説
水曜日。2024年はうるう年なので日数差は366日。366=7×52+2より、月曜日から2日進みます。
2024年3月1日が金曜日であることから、2025年3月1日の曜日を求めよう。
解答・解説
土曜日。この区間は2024年2月29日の後に始まり、2025年2月は28日までなので、日数差は365日です。365=7×52+1より1日分進みます。
現行のグレゴリオ暦が続くなら、2024年2月29日(木曜日)の400年後は何曜日か。
解答・解説
2424年2月29日、木曜日です。400年後もうるう年で同じ日付があり、その間の146097日が7の倍数なので曜日も一致します。祝日の一致まで主張しているわけではありません。
問1. 現行グレゴリオ暦で、うるう年ではないものはどれか。
問2. 日曜日から30日後は何曜日か。
問3. グレゴリオ暦の400年周期で、うるう年は何回あるか。
問4. 歴史資料にある日付の曜日を計算するとき、最も適切な方針はどれか。
出典とこのレッスンの範囲
- 国立天文台「どの年がうるう年になるの?」 https://www.nao.ac.jp/faq/a0306.html :現在のグレゴリオ暦のうるう年規則と平均365.2425日の説明を参照。天体の周期との完全な一致を示す資料ではありません。
- 米国海軍天文台(USNO)「Introduction to Calendars」 https://aa.usno.navy.mil/faq/calendars :太陽暦の考え方、ユリウス暦とグレゴリオ暦の基本規則、1582年の導入を参照。各地域の改暦日一覧ではありません。
- 対象時点は上記資料で説明されている現行規則。2100年以降の計算もその規則が続くという条件付きで、将来の制度変更を予告するものではありません。日数・曜日・400年周期の数値は本文の加算と剰余計算から導いています。