ツェラーの公式

コンピュータ

ツェラーの公式

つぇらーのこうしき

特定の日付が何曜日になるか効率よく計算するための式。

西暦1582年10月15日金曜日(グレゴリオ暦施行日)から有効。

Perlバージョン

sub getwday ($$$) {
  my ($year, $month, $day) = @_;
  if ($month == 1 or $month == 2) {
    -- $year;
    $month += 12;
  }
  return int(
    $year +
    int($year/4) - int($year/100) + int($year/400) +
    int((13*$month+8)/5) +
    $day
  ) % 7;
}

print &getwday(2004, 5, 10);

# 1 = monday

結果は0から6までの数字になり、それぞれ日曜日から土曜日に対応します。