500年(永年)カレンダー計算
みなさ~ん、こんにちは。お元気ですか。きょうはちょっとオモシロイことをやります。カレンダー計算です。「それって何ですか。」と思った人がほとんどだと思います。たとえばあなたが生まれた日の年月日がわかれば30秒くらいで何曜日だったかを計算で求めることが出来るやりかたです。「えっ、そんなことできるんですか。でもむずかしそう。」といっているあなた。じつはそんなに難しくありません。小学校5年生くらいになっていれば出来ます。4年生でもおとなが説明してくれれば出来るでしょう。さあ、みなさんもやり方を覚えて「カレンダー計算博士」になりましょう。きっと友達や家族の皆さんがびっくりするよ。
また、少し工夫することで500年間だけでなく1583年以降永年のカレンダー計算に拡張することができますよ。それでは次の計算のやり方などを読んでがんばってカレンダー計算博士になってくださいね。
ダウンロードするファイルは最後の付録のところにあります。そちらで使い方も説明しています。
・・・はじめに、うるう年について覚えてほしいことがあります・・・
うるう年は、基本的には西暦年号が4で割り切れる数(4の倍数)です。
ただし、次の例外があります。
下2ケタが00年は4の倍数ですが、うるう年を休む。
例、1900年は平年
しかし、上記の場合でも西暦年が400の倍数のときはうるう年とする。
例、2000年はうるう年。次の100年カレンダー計算では1999年までの計算なので西暦2000年のことは考えなくてよいです。
まずは100年カレンダー計算
(1)100年(1900~1999年)カレンダー計算の計算方法。
1900年~1999年の年月日を指定すれば曜日が簡単な計算で求められます。小学5年生くらいの算数ができれば計算できます。計算方法を覚えるのがちょっと大変かもしれないけれど、文章を読む訓練にもなるので頑張って挑戦してみてください。あとで付属の訓練ソフト(エクセルファイル)100年カレンダー計算トレーニングをダウンロードしてパソコンに保存(インストール)して問題に挑戦してください。詳しいソフトの使い方はあとで説明します。
それでは計算の仕方を説明します。
まず、次の1月から12月までのそれぞれの月にあてはまる数字を月定数(つきていすう)と呼ぶことにします。その月定数を暗記してください。4文字ずつ区切って、声を出して暗記したほうが覚えやすいような気がします。
(1)月定数
(2)余りと曜日との関係
計算例1(うるう年でない平年の場合)
1975年3月16日は何曜日だったか。
① 年号の1900年との差を求める。1975-1900=(75)
② 75を4で割った答え。75÷4=18あまり3。ですから(18)
③ 月定数。ここでは3月なので(3)
④ 求めたい日の日数。ここでは16日なので(16)
①から④のかっこの中の数字をすべて足した数を7で割る。あまりから曜日を求める。
(75+18+3+16)÷7=112÷7=16あまり(0)
あまり0は日曜日。
間違いなし。なぜならこの日は私たちの結婚式の日なのでよく覚えています。((^^♪)
計算を簡単にするために、①から④の数字を7であらかじめ割っておき、その余りの合計を7で割る方法もあります。
①75÷7=10あまり5。よって(5)
②18÷7=2あまり4。よって(4)
③3÷7=0あまり3。よって(3)
④16÷7=2あまり2。よって(2)
したがって、(5+4+3+2)÷7=14÷7=2あまり(0)
あまり0は日曜日。
ここまでわかればほぼやり方がわかりましたね。あともうすこしです。がんばって。
計算例2(うるう年で3月以降の場合)
うるう年でも3月以降は平年と全く同じ計算です。
1964年10月10日(この日は何の日かわかりますか)は何曜日だったか。
① 年号の1900年との差を求める。1964-1900=(64)
② 64を4で割った答え。64÷4=(16)(うるう年の回数)
③ 月定数。ここでは10月なので(0)
④ 求めたい日の日数。ここでは10日なので(10)
①から④のかっこの中の数字をすべて足した数を7で割る。あまりから曜日を求める。
(64+16+0+10)÷7=90÷7=12あまり(6)
あまり6は土曜日。
付属の指定日カレンダー計算で確認すると土曜日で正解(○が付く)でした。うまくいったよ。
計算を簡単にするために、①から④の数字を7で割っておき、その余りの合計を7で割る方法もあります。
①64÷7=9あまり1。よって(1)
②16÷7=2あまり2。よって(2)
③0÷7=0あまり0。よって(0)
④10÷7=1あまり3。よって(3)
したがって、(1+2+0+3)÷7=0あまり(6)
あまり6は土曜日。
この簡単なやり方でも答えは同じで土曜日でした。どっちのやり方が簡単かな。
計算例3(うるう年で1月、2月の場合)
うるう年では今までの各種計算例の中の②で1増えているので①で1増えているのと合わせて2日だけ前年より増えて(曜日が進んで)いる。しかし、それは3月1日からのことなので1月と2月については1日進み過ぎている。したがって1月と2月の29日までは計算結果から1引かなくてはならない。
1936年(昭和11年)2月26日は何曜日だったか。
① 年号の1900年との差を求める。1936-1900=(36)
② 36を4で割った答え。36÷4=9。ですから(9)
③ 月定数。ここでは2月なので(3)
④ 求めたい日の日数。ここでは26日なので(26)
①から④のかっこの中の数字をすべて足した数から1を引いた数を7で割る。
(36+9+3+26-1)÷7=73÷7=10あまり(3)
あまり3は水曜日。
付属の指定日カレンダー計算で確認すると水曜日で正解(○が付く)でした。
計算を簡単にするために、①から④の数字を7であらかじめ割っておき、その余りの合計から1を引いた数を7で割る方法もあります。
①36÷7=5あまり1。よって(1)
②9÷7=1あまり2。よって(2)
③3÷7=0あまり3。よって(3)
④26÷7=3あまり5。よって(5)
したがって、(1+2+3+5−1)÷7=10÷7=1あまり(3)
あまり3は水曜日。
次に、ちょうど1900年は①と②の計算がいらないし、うるう年でもない(初めのほうで説明)ので計算が楽です。
計算例4(1900年の場合)
1900年1月1日は何曜日だったか。
この年は平年(うるう年でない)。
①0なので無視。
②0なので無視。
③月定数、1月は0なので(0)
④求めたい日の日数。ここでは1日なので(1)
(0+1)÷7=0あまり(1)
あまり1は月曜日。
*付属の指定日カレンダー計算では1900年は入力できないようになっています。それは正誤を判定するソフトExcelの関数(Weekday関数)が
1900年をうるう年のように2月29日が存在する設計になっているからです。どうもExcelより開発先行した表計算ソフトが間違ってしまったけれどもそのままなのでそれに合わせたらしいです。ですから皆さんは計算で求めるしかないです。
それでは、いよいよ500年カレンダー計算方法に入ります。
(2)500年(1900~2399年)カレンダー計算の計算方法
2000年代、2100年代、2200年代、2300年代の計算の仕方はどうするか。
今までの計算の①で年号の下2桁を使ってきたが、2000年代以降もおなじ下2桁を使う。2025年なら25、2147年なら47のように。
計算の最後に⑤として次の数をたす。1900年代は何も足さないので、0を足すと考えてください。
すでに述べたように2000年はうるう年。
2100年、2200年、2300年はすべて平年。
計算例5
2000年1月1日は何曜日だったか。
この年はうるう年。
①ここでは(0)
②ここでも(0)
③月定数。ここでは1月なので(0)
④求めたい日の日数。ここでは1日なので(1)
⑤2000年代(2000年~2099年)なので(6)
①から⑤のかっこの中の数字をすべて足した数から1を引いた数(うるう年の1月、2月は1を引く)を7でわる。
(0+0+0+1+6−1)÷7=0あまり(6)
あまり6は土曜日。
付属の指定日カレンダー計算で確認すると土曜日で正解(○が付く)でした。計算を簡単にするために、①から⑤の数字を7であらかじめ割っておき、その余りの合計から1を引いた数を7で割る方法は省略します。
計算例6
2067年6月17日は何曜日だろうか。
①2067-2000=(67)
②67÷4=16あまり3。なので(16)
③6月は(4)
④17日は(17)
⑤2000年代なので(6)
①から⑤のかっこの中の数字をすべて足した数を7で割る。
(67+16+4+17+6)÷7=110÷7=15あまり(5)
あまり5は金曜日。
付属の指定日カレンダー計算で確認すると金曜日で正解(○が付く)でした。計算を簡単にするために、①から⑤の数字を7であらかじめ割っておき、その余りの合計を7で割る方法は省略します。
計算例7
2110年3月3日は何曜日だろうか。。
①2110ー2100=(10)
②10÷4=2あまり2。なので(2)
③3月は(3)
④3日は(3)
⑤2100年代なので(4)
①から⑤のかっこの中の数字をすべて足した数を7で割る。
(10+2+3+3+4)÷7=22÷7=3あまり(1)
あまり1は月曜日。
付属の指定日カレンダー計算で確認すると月曜日で正解(○が付く)でした。計算を簡単にするために、①から⑤の数字を7であらかじめ割っておき、その余りの合計を7で割る方法は省略します。
計算例8
2220年5月5日は何曜日だろうか。
①2220ー2200=(20)
②20÷4=5あまり0。なので(5)
③5月は(1)
④5日は(5)
⑤2200年代なので(2)
①から⑤のかっこの中の数字をすべて足した数を7で割る。
(20+5+1+5+2)÷7=33÷7=4あまり(5)
あまり5は金曜日。
付属の指定日カレンダー計算で確認すると金曜日で正解(○が付く)でした。
計算例9
2330年7月7日は何曜日だろうか。
①2330ー2300=(30)
②30÷4=7あまり2。なので(7)
③7月は(6)
④7日は(7)
⑤2300年代なので(0)
①から⑤のかっこの中の数字をすべて足した数を7で割る。
(30+7+6+7+0)÷7=50÷7=7あまり(1)
あまり1は月曜日。
付属の指定日カレンダー計算で確認すると月曜日で正解(○が付く)でした。
(3)永年カレンダー計算をする。
現在使っているグレゴリオ暦は、1582年10月15日(金曜日)からスタートしました。この日から1899年までは年号に400を足して計算します。たとえば、1610年1月1日なら2010年1月1日の計算をすれば何曜日だったかわかります。
追記 ここでは計算を複雑にしないために1583年1月1日から計算することをおすすめします。1583年1月1日時点でグレゴリオ暦を採用していた国はイタリア、スペイン、ポルトガル、ベルギー、フランス(1793.11.24~1805.12.31中断)です。
日本は1873年(明治6年)1月1日から採用。
(4)さいごに
下記ファイルをダウンロードしてください。
3つともすべてエクセルファイルです。エクセル97(1997頃発売)以降ののエクセルで使えます。それ以前のでも使えるかもしれませんが確認していません。
マクロを使っているのでセキュリティー上ブロックされることがあります。
ブロック解除する方法は下記の通り(microsoftのHPより転写)
ほとんどの場合、次のようにファイルのプロパティを変更することでマクロのブロックを解除できます。
Windows ファイル エクスプローラーを開き、ファイルを保存したフォルダーに移動します。
ファイルを右クリックし、コンテキスト メニューから [プロパティ] を選択します。
[全般] タブの下部で、[ブロック解除] チェック ボックスを選択して、[OK] を選択します。
ここから先は
¥ 300
よろしければサポートお願いします。