<紙>さんLOG

「パソコンヲタクの雑記帳」
 PC/Linux系/物理・化学で遊んでいます。
思いついたことを綴っています。

西暦1年1月1日は月曜日?

2008年07月25日 | Weblog
昨日までの累計アクセス数=4,007。 ご訪問頂き、ありがとうございます。    日記@BlogRanking
皆様のお引き立てにより、「60代~日記@BlogRanking」でほぼ8位になっています。
まことにありがとう御座います。
ブログを始めて1ヶ月経ちました。平均的には1日2百アクセス程度とまだまだです。

 さて、例えば、y=2008 の様な年、m=7 の様な月、d=25 の様な日、とすると、
西暦1年1月1日からの通算日数 dd は、(Active Basic のコードで)

If 3>m Then m+=12 : y-- ' 1月、2月は前年の13月、14月とする。
dd=365*y+Int(y/4)-Int(y/100)+Int(y/400)+Int(306*(m+1)/10)+d-428

で計算できる。つまり今日、2008.7.25 は733,248日目である。
ここで、Int(y/4) とは「y÷4 の商(あまりを切り捨てたもの)」です。

また曜日は、(dd mod 7) で求まる0~6で、0:日、1:月、・・・、6:土、(7:日)曜日となる。
(dd mod 7) とは、「dd÷7 のあまり」のことです。

(733,248 mod 7)=5、つまり今日は金曜日です。

なお、曜日計算の公式としては、ツェラーの公式(Zeller's congruence)が有名である。

「ユリウス暦」とか「グレゴリオ暦」とかその他いろいろな暦があるので、
2000年以上前のことについては不確かですが、近代の日数計算には使えます。

お手数をおかけしますが、2クリック(投票を)して頂けるとうれしいです。(1日1回) ⇒ 日記@BlogRanking