とりあえず、Jet Streamが存続すれば、その他は何でもいいかな。
午前零時に聞こえてくる"Mr. Lonely"は格別なのです。
毎日起こっている事を何にも考えずに書いています。備忘録代わりです。2009年までは専ら大学での研究日誌、それ以降はPCのTIPS集、ランニング(マラソン)について書いています。
Most entries are in Japanese (click here to read with translation), but several computer TIPS are in English. I used to study Physics, but worked at a bank in London, Tokyo, and now in Singapore.
とりあえず、Jet Streamが存続すれば、その他は何でもいいかな。
午前零時に聞こえてくる"Mr. Lonely"は格別なのです。
我が家にはテレビが無い。引っ越すときにオークションで売っちゃったから。
部屋は広くないし散らかってるし、置くスペースもないし、面白い番組も少ないし、
積極的にTVを買う理由が無い。
PCにTVのチューナーを繋ぐって手もあるんだけれども、
やたら高いし、果たしてコストパフォーマンスは?って考えたら気が引ける。
そんなこんなで、インターネットを探していたら、
「チューナー無しでパソコンからテレビを見る」
というソフトがあった。KeyHoleで検索すると出てくる。
画面はそんなに綺麗じゃないし、時々もたつくけれど、
こだわらなければ十分なのかな、と。
を見てください。きっと「おっ!」と思うでしょう*1
さっき、ラジオで言ってました。ロケットマン・ショーです。
さてさて、カレンダーがこういう風になるのはあと何年あるでしょーか?、というのが今回のお題。
つまり、2月1日が日曜日で、かつ、閏年でない年を探したい。
因みに1年後の2010年2月1日は経過日数=356日だから、365=52×7+1日後で月曜日。残念でした。
(2009年2月1日から)T年後2月1日までの経過日数Dが7の倍数になればいいんです。ただし閏年は失格です。
この閏年が曲者。経過日数に取り込む必要があります。Wikipedia(http://ja.wikipedia.org/wiki/%E9%96%8F%E5%B9%B4)によると、
西暦年が4で割り切れる年は閏年
ただし、西暦年が100で割り切れる年は平年
ただし、西暦年が400で割り切れる年は閏年
とのこと。例外条件がある。うーん、初っ端から面倒そう。
ただ、閏年は400年周期だということは分かる。更に、
表1 | |||
20XX年 | 21XX年 | 22XX年 | 23XX年 |
---|---|---|---|
00年=○(閏年) | 00年=×(平年) | 00年=× | 00年=× |
04年=○ | 04年=○ | 04年=○ | 04年=○ |
・・・ | ・・・ | ・・・ | ・・・ |
96(24×4)年=○ | 96年=○ | 96年=○ | 96年=○ |
閏年=25回 | 閏年=24回 | 閏年=24回 | 閏年=24回 |
となって、400年間の日数は400×365+25+24+24+24=146097=20871×7となる。
必然か偶然か、400年経つと閏年・曜日の両方が元に戻る。つまり、400年周期で同じカレンダーが繰り返すということです。
以上で、2000年~2399年を調べれば充分、ということが分かりました。
表1を元に、
I) 2000年~2099年 II) 2100年~2199年 III) 2200年~2299年 IV) 2300年~2399年
に分けましょう。
I) 2000年~2099年
この範囲では4の倍数=閏年と考えて良いので話は簡単になります。
条件は
[(2009年2月1日から)T年後2月1日までの経過日数D]=[7の倍数]
2000≦2009+T≦2099より、-9≦T≦90
2009+T≠[4の倍数]
です。
閏年を考えるためにTを4で割った余りに分類します。
T=1,2,3,4,5で考えてみます。
2010年(T=1) | 経過日数D=365 |
---|---|
2011年(T=2) | 経過日数D=365×2 |
2012年(T=3) | 経過日数D=365×3 |
2013年(T=4) | 経過日数D=365×4+1 (前年2012年は閏年) |
2014年(T=5) | 経過日数D=(365×4+1)+365 |
となります。
一般化します。nは整数とします。
T=4n+1 | 経過日数D=(365×4+1)n+365≡5n+1 |
---|---|
T=4n+2 | 経過日数D=(365×4+1)n+365×2≡5n+2 |
T=4n+3(→2009+T=4(503+n)年より閏年→失格) | 経過日数D=(365×4+1)n+365×3≡5n+3 |
T=4n+4 | 経過日数D=(365×4+1)n+365×4+1≡5(n+1) |
です。ここで、「≡」は、両辺それぞれを7で割った余りが等しいことを意味します。計算には365=52×7+1、365×4+1=208×7+5を使いました。
これ以降は、D≡0となるnを探していきます。nを7で割った商をm、余りをrとします:n=7m+r (r=0,1,2,..,6)
すると、
表2 | |
T=4n+1=28m+4r+1 | 経過日数D≡5n+1≡5r+1で、D≡0となるのはr=4のみ |
---|---|
T=4n+2=28m+4r+2 | 経過日数D≡5n+2≡5r+2で、D≡0となるのはr=1のみ |
T=4n+4=4(7m+r+1) | 経過日数D≡5(n+1)≡5r+5で、D≡0となるのはr=6のみ |
と分かります。
つまり、T=28m+17, 28m+6, 28m+28です。-9≦T≦90より、
表3 | |
T=28m+17 | T=17, 45, 73。つまり、2026年、2054年、2082年 |
---|---|
T=28m+6 | T=6, 34, 62, 90。つまり、2015年、2043年、2071年、2099年 |
T=28m+28 | T=0, 28, 56, 84。つまり、2009年、2037年、2065年、2093年 |
です。意外と多いですね。
II) 2100年~2199年
ドラえもんの世紀です。2009+T→2100+Tと変更します。
表1から、2009年2月1日から2109年2月1日までの経過日数は365×100+24=5217×7+5です。
これにあわせて、表2を
表4 | |
T=4n+1=28m+4r+1 | 経過日数D≡5n+1+5≡5(r+1)+1で、D≡0となるのはr=3のみ |
---|---|
T=4n+2=28m+4r+2 | 経過日数D≡5n+2+5≡5(r+1)+2で、D≡0となるのはr=0のみ |
T=4n+4=4(7m+r+1) | 経過日数D≡5(n+1)+5≡5(r+1)+5で、D≡0となるのはr=5のみ |
と修正します。ピンクが修正箇所です。
従って、T=28m+13, 28m+2, 28m+24です。Tの範囲は2100≦2109+T≦2199より、-9≦T≦90です。つまり表3は、
表5 | |
T=28m+13 | T=13, 41, 69。つまり、2122年、2150年、2178年 |
---|---|
T=28m+2 | T=2, 30, 58, 86。つまり、2111年、2139年、2167年、2195年 |
T=28m+24 | T=-4, 24, 52, 80。つまり、2105年、2133年、2161年、2189年 |
です。
III) 2200年~2299年
2109+T→2200+Tと変更します。
表1から、2109年2月1日から2209年2月1日までの経過日数は同じく365×100+24=5217×7+5です。
表4を更に、
表6 | |
T=4n+1=28m+4r+1 | 経過日数D≡5n+1+5+5≡5(r+2)+1で、D≡0となるのはr=2のみ |
---|---|
T=4n+2=28m+4r+2 | 経過日数D≡5n+2+5+5≡5(r+2)+2で、D≡0となるのはr=6のみ |
T=4n+4=4(7m+r+1) | 経過日数D≡5(n+1)+5+5≡5(r+2)+5で、D≡0となるのはr=4のみ |
と修正します。
従って、T=28m+9, 28m+26, 28m+20です。
II)と同様にして、Tの範囲は2200≦2209+T≦2299より、-9≦T≦90です。つまり表5は、
表7 | |
T=28m+9 | T=9, 37, 65。つまり、2218年、2246年、2274年 |
---|---|
T=28m+26 | T=-2, 26, 54, 82。つまり、2207年、2235年、2263年、2291年 |
T=28m+20 | T=-8, 20, 48, 76。つまり、2201年、2229年、2257年、2285年 |
です。
IV) 2300年~2399年
最後です。もう一息です。III)と全く同様です。2209+T→2300+Tと変更します。
表1から、2109年2月1日から2209年2月1日までの経過日数は同じく365×100+24=5217×7+5です。
表6を更に、
表8 | |
T=4n+1=28m+4r+1 | 経過日数D≡5n+1+5+5+5≡5(r+3)+1で、D≡0となるのはr=1のみ |
---|---|
T=4n+2=28m+4r+2 | 経過日数D≡5n+2+5+5+5≡5(r+3)+2で、D≡0となるのはr=5のみ |
T=4n+4=4(7m+r+1) | 経過日数D≡5(n+1)+5+5+5≡5(r+3)+5で、D≡0となるのはr=3のみ |
と修正します。
従って、T=28m+5, 28m+22, 28m+16です。
Tの範囲は2300≦2309+T≦2399より、-9≦T≦90です。つまり表7は、
表9 | |
T=28m+5 | T=5, 33, 61, 89。つまり、2314年、2342年、2370年、2398年 |
---|---|
T=28m+22 | T=-6, 22, 50, 78。つまり、2303年、2331年、2359年、2387年 |
T=28m+16 | T=16, 44, 72。つまり、2325年、2353年、2381年 |
です。
*まとめ
カレンダーが400年周期であることを使うと、表3,5,7,9より、
4n×100+XX年 | XX=09, 15, 26, 37, 43, 54, 65, 71, 82, 93, 99 |
---|---|
(4n+1)100+XX年 | XX=05, 11, 22, 33, 39, 50, 61, 67, 78, 89, 95 |
(4n+2)100+XX年 | XX=01, 07, 18, 29, 35, 46, 57, 63, 74, 85, 91 |
(4n+3)100+XX年 | XX=03, 14, 25, 31, 42, 53, 59, 70, 81, 87, 98 |
となります。100年に11回出てきますね。出現確率は11%。結構多いです。
一応、http://www5a.biglobe.ne.jp/~accent/kazeno/calendar/rest.htmで確認したので計算間違いはないと思います。cgiカレンダーは誤差が大きかったですね。
2009年の次は、2015年。その次は2026年です。表3,5,7,9から分かりますが、+6年, +11年, +11年を1サイクルにして増えていきますね。
1サイクルの周期は28です。但し世紀越えで例外があります。400の倍数の年なら+11、400で割った余りが100, 200のときには+6、 300のときは+12です。閏年の変則ルールが反映されてます。
因みに、このように閏年を入れたカレンダーはグレゴリオ暦と言われてます。Wikipedia(http://ja.wikipedia.org/wiki/%E9%96%8F%E5%B9%B4)によると、
そこでローマ教皇・グレゴリウス13世は同世代を代表する学者たちを招集して委員会をつくり、暦の研究を行わせた。こうして1582年、グレゴリオ暦が制定された。グレゴリオ暦は数百年かけて各国で採用されて、現在に至っている。
だそうです。400年の日数が7の倍数というのは利便さからの必然性がありそうです。自分が到底生きていることのない未来の暦まで研究した当時の学者たちは、何を思ってその未来の西暦の数字を見ていたのでしょうか。今回、僕は2101年とかの数字を見て、この年まで生きてるかなー、とか、その頃には世界はどうなっているんだろー、などと思いを巡らしました。
暦の研究は以後も続けられ、地球の自転・公転とよりフィットする暦が考えられました。改訂ユリウス暦です。Wikipedia(http://ja.wikipedia.org/wiki/%E9%96%8F%E5%B9%B4)では、
改訂ユリウス暦は次のような置閏法(=閏年の入れ方)を持つ。1暦年は平均365.242222日で、約4万3500年に1日の割合で暦と季節がずれる。これはグレゴリオ暦より精度がいい。
西暦年が4で割り切れる年は閏年
ただし、西暦年が100で割り切れる年は平年
ただし、西暦年を900で割った余りが200または600になる年は閏年
・・・(中略)・・・
2799年までは2つの暦(=グレゴリオ暦と改訂ユリウス暦)は一致している。しかし2800年がグレゴリオ暦では閏年なのに対し、改訂ユリウス暦では平年になり日付が1日ずれる。2900年は逆に改訂ユリウス暦のみが閏年となり日付はふたたび一致するが以後断続的にこのようなずれが生まれ、5199年を最後に日付が一致することはなくなる。
へぇー、5199年か。もう、人間自体が生きているんでしょーか?ってレベルだよね。
*1:1ヶ月の日全部が、4×7の長方形上にすっぽりと収まります。
ふと深夜にテレビで見たんだけど、これ面白い!!
なさそうだけども、あってもおかしくない話。現実と小説の間みたいな世界だな、これは。
自分とは距離をおきたいと思いつつも、一度見ておきたい気もする。
hiroto-o
とある大学の大学院博士課程を何とか卒業して、とある金融(クオンツ)の仕事をロンドン、東京、今はシンガポールでしています。
リンクはご自由に。メールはhirotoo20[at_mark]gmail.comまで。
ランニングベストタイム:
- Marathon: 2:50
(Seoul marathon, Mar 2019)
- Half marathon: 1:21
(Marina Run, Feb 2019)
-10K: 0:38:28
(Seoul marathon, 10k split, Mar 2019)
-100K: 8:28
(サロマ湖ウルトラマラソン, Jun 2018)
-Coming up
かすみがうらマラソン Apr 2019