markdown
調日算md eb4f5dd
lecture/math/number-theory/calendar-arithmetic.lecture.n.md
Download PDF

調日算ちょうにちざん

date2026-07-14document_iddoc_65d2270f46d031d43dc18e4a1a4077b4description曜日・干支・暦の周期を合同式で計算する—調日算の基本手順・ツェラーの公式・複合周期への中国剰余定理の応用を整理する。prerequisites合同式とmod演算の基本 / 中国剰余定理type講義content_typelecturestatusactiverelateddata/lecture/math/number-theory/number-theory-portal.lecture.n.md / data/lecture/math/number-theory/chinese-remainder-theorem.lecture.n.md / data/lecture/math/abstract-algebra/congruences-and-modular-arithmetic.lecture.n.md
mathalgebranumber-theoryhighschoollecture

1導入どうにゅう

この講義こうぎでは、暦こよみの周期しゅうき(7 日にち/週しゅう、12 ヶ月げつ、60 干支えとなど)は合同式ごうどうしきの演算えんざんに過すぎず、中国ちゅうごく剰余定理じょうよていりによって複合周期ふくごうしゅうき問題もんだいが系統的けいとうてきに解とけることを説明せつめいする。

「2026 年ねん 1 月がつ 1 日にちは何なん曜日ようびか」「干支えとが同おなじになるのは何年なんねん後ごか」—これらは全すべて整数せいすうの余あまりの問題もんだいである。

2用語ようごと定義ていぎ

2.1調日算ちょうにちざんCalendar arithmetic

調日算ちょうにちざんCalendar arithmeticとは、暦こよみの周期性しゅうきせいを合同式ごうどうしきで記述きじゅつし、特定とくていの日付ひづけ・曜日ようび・干支えとを計算けいさんする手法しゅほうの総称そうしょうである。

「調日ちょうにち」という命名めいめい:日にちを調ととのえる・計算けいさんする意味いみ。中国ちゅうごく算学さんがくの伝統でんとうに由来ゆらいし、孫子算経そんしさんけいの問題もんだい形式けいしきがその原型げんけい。

2.2暦こよみの主要しゅような周期しゅうき

単位たんい周期しゅうき対応たいおうするmodもど
曜日ようび7 日にち[PARSE ERROR: Undefined("Command(\"bmod\")")]7
干支えと(十干じっかん)10 年ねん[PARSE ERROR: Undefined("Command(\"bmod\")")]10
干支えと(十二支じゅうにし)12 年ねん[PARSE ERROR: Undefined("Command(\"bmod\")")]12
干支えと(六十干支ろくじゅっかんし)60 年ねん[PARSE ERROR: Undefined("Command(\"bmod\")")]60(=lcm(10,12))
旧暦きゅうれきの閏月うるうづき19 年ねん(メトン周期しゅうき)[PARSE ERROR: Undefined("Command(\"bmod\")")]19

[PARSE ERROR: Undefined("Command(\"gcd\")")](10,12)=2≠1 なので十干じっかんと十二支じゅうにしに直接ちょくせつ CRT は使つかえないが、lcm(10,12)=60 が実際じっさいの周期しゅうきになる。

3方針ほうしん

3.1基本きほん:基準日きじゅんびからの日数にっすうを計算けいさんして余あまりを取とる

曜日≡(基準日の曜日の番号)+(経過日数)[PARSE ERROR: Undefined("Command(\"pmod\")")]7

3.2複合周期ふくごうしゅうき:CRT を使用しようする

法ほうが互たがいに素そなら CRT で連立合同式れんりつごうどうしきを解とく。

4厳密げんみつな説明せつめい

4.11. 曜日ようびの計算けいさん([PARSE ERROR: Undefined("Command(\"bmod\")")]7)

基本きほん手順てじゅん:

  1. 基準日きじゅんびの曜日ようびを数値すうち化かする(日にち曜ようを 0、月げつ曜ようを 1、…、土ど曜ようを 6 など)
  2. 目標日もくひょうびまでの日数にっすう d を計算けいさんする
  3. (基準曜日)+d[PARSE ERROR: Undefined("Command(\"pmod\")")]7 を計算けいさんする

月つきの日数にっすうの規則きそく:

月つき123456789101112
日数にっすう3128/2931303130313130313031

閏年うるうどしの判定はんてい:4 の倍数ばいすうかつ(100 の倍数ばいすうでない または 400 の倍数ばいすう)。

例れい:2026 年ねん 1 月がつ 1 日にちの曜日ようび。

基準きじゅん:2000 年ねん 1 月がつ 1 日にちは土曜日どようび(= 6)。

2000 年ねん 1 月がつ 1 日にちから 2026 年ねん 1 月がつ 1 日にちまで:26 年ねん + 閏年うるうどし 日数にっすう。

26 年ねんの日数にっすう:26×365=9490。閏年うるうどし:2000, 2004, …, 2024 → 7 回かい。合計ごうけい d=9490+7=9497。

9497÷7=1356 余あまり 5。

6+5=11≡4[PARSE ERROR: Undefined("Command(\"pmod\")")]7。木曜日もくようび(木もく = 4 と設定せっていした場合ばあい)。

4.22. ツェラーの公式こうしき(Zeller's congruence)

y 年ねん m 月つき d 日にちの曜日ようび h(0 = 土ど、1 = 日にち、…、6 = 金きん)を与あたえる公式こうしき:

h=(d+⌊13(m+1)5⌋+K+⌊K4⌋+⌊J4⌋-2J)[PARSE ERROR: Undefined("Command(\"bmod\")")]7

ここで m[PARSE ERROR: Undefined("Command(\"ge\")")]3(1, 2 月つきは前年ぜんねんの 13, 14 月つきとして扱あつかう)、K=y[PARSE ERROR: Undefined("Command(\"bmod\")")]100(年ねんの下した 2 桁けた)、J=⌊y/100⌋(世紀せいき)。

公式こうしきの意味いみ:各項かくこうは日にち・月つきの補正ほせい・年ねんの余あまり・閏年うるうどしの補正ほせい・世紀せいきの補正ほせいを合計ごうけいした累積日数るいせきにっすうの mod 7 である。

4.33. 干支えとの計算けいさん

西暦せいれき y 年ねんの十干じっかん(甲こう 0、乙おつ 1、…):

十干=(y-4)[PARSE ERROR: Undefined("Command(\"bmod\")")]10

十二支じゅうにし(子ね 0、丑うし 1、…):

十二支=(y-4)[PARSE ERROR: Undefined("Command(\"bmod\")")]12

理由りゆう:西暦せいれき 4 年ねんが甲子こうし年ねんであることを基準きじゅんに設定せってい(基準年きじゅんどしは文献ぶんけんにより異ことなる場合ばあいがある)。

六十干支ろくじゅっかんしの周期しゅうき 60 は lcm(10,12)=60。これは CRT を使つかう場合ばあいと異ことなり([PARSE ERROR: Undefined("Command(\"gcd\")")](10,12)=2≠1)、十干じっかんと十二支じゅうにしの組くみみ合あわせは 60 通とおりのうち 30 通とおりしか実現じつげんしない(偶奇ぐうきが一致いっちする組くみみ合あわせのみ)。

4.44. 複合周期ふくごうしゅうきの問題もんだい(CRT の応用おうよう)

「日曜日にちようびかつ満月まんげつ(朔望さくぼう月つき ≈ 29.5 日にち → 近似きんじして 29 日にち周期しゅうきと仮定かてい)の次つぎはいつか」:

d≡0[PARSE ERROR: Undefined("Command(\"pmod\")")]7,d≡r[PARSE ERROR: Undefined("Command(\"pmod\")")]29

[PARSE ERROR: Undefined("Command(\"gcd\")")](7,29)=1 なので CRT より d[PARSE ERROR: Undefined("Command(\"pmod\")")]203 に一意いちいの解かいがある。

実際じっさいの天文てんもん計算けいさんでは朔望月さくぼうつき(29.53 日にち)を有理近似ゆうりきんじし、連分数れんぶんすうで良よい近似きんじ分数ぶんすうを求もとめてから合同式ごうどうしきを使用しようする(メトン周期しゅうき 19 年ねん = 235 朔望月さくぼうつきはこうして発見はっけんされた)。

5見分みわけ方かた

  • 曜日ようび問題もんだい → [PARSE ERROR: Undefined("Command(\"bmod\")")]7 で日数にっすうを管理かんり
  • 干支えと問題もんだい → [PARSE ERROR: Undefined("Command(\"bmod\")")]10 と [PARSE ERROR: Undefined("Command(\"bmod\")")]12 の組くみみ合あわせ(周期しゅうき 60)
  • 複数ふくすうの周期しゅうきが絡からむ → 法ほうが互たがいに素そなら CRT、そうでなければ lcm で周期しゅうきを求もとめる
  • 正確せいかくな年代ねんだい計算けいさん → 閏年うるうどしの補正ほせいを忘わすれない

6どこまで成立せいりつするか

ツェラーの公式こうしきはグレゴリオ暦こよみに対たいして有効ゆうこう(ユリウス暦こよみでは係数けいすうが異ことなる)。実際じっさいの天文てんもん計算けいさんでは朔望月さくぼうつきが整数せいすうでないため合同式ごうどうしきのみでは不十分ふじゅうぶん—連分数れんぶんすうや連続分数れんぞくぶんすう近似きんじとの組くみみ合あわせが必要ひつようになる。

7最終形さいしゅうけい

[PARSE ERROR: Undefined("Command(\"boxed\")")]曜日≡(基準曜日)+(経過日数)[PARSE ERROR: Undefined("Command(\"pmod\")")]7
[PARSE ERROR: Undefined("Command(\"boxed\")")]十干=(y-4)[PARSE ERROR: Undefined("Command(\"bmod\")")]10,十二支=(y-4)[PARSE ERROR: Undefined("Command(\"bmod\")")]12,干支周期=60

8一言ひとことでいうと

調日算ちょうにちざんは暦こよみの周期性しゅうきせいを mod 演算えんざんに翻訳ほんやくする技術ぎじゅつであり、複合周期ふくごうしゅうきには中国ちゅうごく剰余定理じょうよていり・単一周期たんいつしゅうきには直接ちょくせつの mod 計算けいさんが対応たいおうする。

9関連かんれんリンク

data/lecture/math/number-theory/chinese-remainder-theorem.lecture.n.md data/lecture/math/abstract-algebra/congruences-and-modular-arithmetic.lecture.n.md data/lecture/math/number-theory/continued-fraction-expansions.lecture.n.md
raw .n.md をコピー
loc をコピー (filepath:line ~ line)
copy share link
copy encoded share link
path をコピー
copy share link
copy encoded share link
copy share link
copy encoded share link
タブを全て閉じる