4年に一度のうるう年

4で割れる年はうるう年。

でも100で割れる年はうるう年じゃない。

でも400で割れる年はうるう年。

要するに400年に97回うるう年があって、303回うるう年じゃない年があると。

400年に100回(すなわち4年に1回)だと簡単だったんですが、それでは400年に3日ずれてしまうわけですね。

もっともこのルールが改められたのは意外と最近で、シーザーが暦を定めてから1579年までは、ずっと4年に1回のうるう年だったらしいです。

シーザーが暦を定めたのは紀元前ですから、1579年の時点では、かなり日付がずれていたわけです。

これを修正したのはグレゴリウス。10/5から10/15までの11日をすっ飛ばして解決するという実にすがすがしい修正方法で修正したそうな。

もっともこの修正は各国ですぐに行われたわけではなく、例えばイギリスでは1752年に暦をグレゴリオ暦に改めました。それまでは各国で暦が違ってたわけですね。

今では考えられない話ですのう。

なお、このルールでも3000年ほどで1日ずれるらしいので、また何か調整があるかもしれません。西暦3000年あたりが楽しみです。生きてないけど。

ついでいうと同じ理由により、春分、秋分も4年周期、400年周期で日付が移動します。

2092年以降は 3/19が春分になることがあります。

一方で3/22が春分になるのは2300年以降なそうな。

余談

400年の日数は146097日ゆえ、7で割り切れます。 つまり400年後の今日は同じ曜日なわけですね。 だからカレンダーは400年分用意しておけば、いろんな意味で楽だったりします。 例えば元旦からの日数とかは400年分テーブルをつくっておけばOK。 もっとも便利な標準ライブラリが最近はそろってるから、わざわざこんなことしなくてもいいか。
Posted by issei

カテゴリ: 雑記

コメント一覧

ほんの数日前にも高校の先輩でNHKの番組制作してる人にも書いたのですが、 ローマ教皇の教書が伝わるやいなや改暦したカトリックの国と、プロテスタントや その他の国で改暦した年が違うし、日本みたいに太陰暦から改暦した国もあって、 タネンバウムのOS本にもそのへんのエピソードが書かれてて面白いんですよ。 FreeBSDとかでncal -pってやると改暦した日付の一覧が出ます。 そしてその時の暦も「ちゃんと」対応していて、過去に遡って利息計算したり、 ハレー彗星の周期計算できるという…。 % ncal -s IT 10 1582 10月 1582 月 1 18 25 火 2 19 26 水 3 20 27 木 4 21 28 金 15 22 29 土 16 23 30 日 17 24 31 こんな感じ。isseiさんなら既に知ってたかも、ですが。 更に地球の自転自体が遅く成って行ってるので、閏秒なんてのも有ります。 ntpd動かしておけば勝手にセシウム原子時計に合わせてくれるけど。 JAIST時代、サブテーマでパジェロ大王のもと、NTPプロトコルのRFC を翻訳しますた。たかが時刻の奥の深さが予想外でした。
kaz

しかし逆に、16世紀の時点でその修正ができるほど天文学が発達していたってのもすごい気もします。 無駄な補足かもしれんけど、日本の太陰太陽暦 -> 太陽暦への改暦では一月弱すっとばしてますよね。たしか。 さて、月末だから月末作業だ。。4年に一度の閏日が月末になるのは400年に何度かな?
jack

#!/usr/bin/env python from datetime import datetime, timedelta i = 0 for x in range(2000, 2400, 4): try: y = datetime(x, 2, 29) except:pass if y.weekday() == 4: i += 1 print i, 'times.' テラ力技(笑)。14回でした。
jack

kazさん> 暦は昔かなり気合いをいれて調べたのでだいたい把握しています。太陰太陽暦の計算方法まで調べましたよ。 jackさん> 天文学は紀元前からですからね。しかし2月29日は毎回月末ですよw とつっこんでみる。 (週末の間違いですねw
Isami

そうです。あーはずかし。 御存知とは思うけど、週末の月末だとなにかと事務作業が集中しがちで。
jack