なたでぽぽ

曜日の計算

任意の日の曜日を計算する公式として、Zellerの公式(ツェラーの公式)というのが知られています。

 

ツェラーの公式

西暦 Y 年 M 月 D 日の曜日は、

を7で割った余りである。

ただし、1月、2月については前年の13月、14月として計算すること。

0が日曜日、1が月曜日、・・・、6が土曜日を表す。

 

最初の四つの項が、年の部分の計算です。閏年のルールが少しややこしいために、このような式になっています。次の[2.6(M+1)]というのが、月に関する計算になります。一ヶ月は30日だったり31日だったり、28日だったりするわけですが、2.6という定数を決めることによって、この違いを表現しています。ここがこの公式のすごいところです。

 

なお、Zellerというのは19世紀に活躍したドイツ人の名前です。

von Chr. Zeller, "Kalender-Formeln", Acta Mathematica, 9, 131-136,  1886.

という論文で、この公式を発表しています。残念ながらドイツ語で書かれていますので、何が書いてあるのかは読めないわけですが、数式がふんだんに使われていますので、大体の感じは伝わってきます。

100年以上も前の文献なのですが、下のサイトでPDFをダウンロードすることが出来ます。便利な時代になったものですね。

http://www.springerlink.com/content/08427w7q63622465/

なお、詳しい解説を日本語で読みたいという方には、連載 自然の不思議・数理の不思議がおすすめです。曜日計算の話以外にも、ポーカーの話など興味深い記事があります。