MCPで接続 →

計算を入力してください

公式

広告

結果

あなたが生まれたのは
Monday
曜日
Your next birthday (2027) Friday

このツールでできること

「自分が生まれたのは何曜日だったんだろう?」と気になったことはありませんか。のんびりした日曜日だったのか、それとも慌ただしい月曜日だったのか——この「誕生日の曜日計算ツール」を使えば、あなたの生年月日がぴったり何曜日だったのかがすぐにわかります。さらにおまけとして、次の誕生日が何曜日になるかも表示。グレゴリオ暦のどんな日付にも対応しています。

ハイライトされた生年月日が曜日ラベルを指しているカレンダー
この計算ツールは、任意の生年月日を曜日に対応させます。

使い方

生まれた年を入力し、プルダウンから生まれた月を選び、生まれた日を入力します。あとは計算ボタンを押すだけ。上部のボックスに生まれた曜日が表示され、その下の表には次に迎える誕生日の曜日が出てくるので、お祝いの計画を立てる参考にもなります。

計算の仕組み

このツールは、任意の日付の曜日を割り出す古典的なアルゴリズム「ツェラーの公式」を使っています。1月と2月は、前年の13月・14月として扱うのがこの公式の特徴です。公式では h という値を計算し、0=土曜日、1=日曜日……という形で曜日が決まります。表示の際には、日曜日〜土曜日という馴染みのある並びに変換しています。すべて整数だけの計算で行うため、結果は正確で、誤差が生じることはありません。

$$h = \left( D + \left\lfloor \frac{13(m+1)}{5} \right\rfloor + K + \left\lfloor \frac{K}{4} \right\rfloor + \left\lfloor \frac{J}{4} \right\rfloor + 5J \right) \bmod 7$$$$\text{where}\quad \left\{ \begin{aligned} D &= \text{Birth Day} \\ m &= \text{Month}\ \ (\text{Jan,Feb} \to 13,14\text{ of prior year}) \\ Y &= \text{Birth Year}\ (\text{adjusted}) \\ K &= Y \bmod 100,\quad J = \left\lfloor Y/100 \right\rfloor \end{aligned} \right.$$
ツェラーの公式の変数 d, m, k, j が7の剰余の結果に入る図
ツェラーの公式は日付を要素に分解し、それらを合算して7で割った余りを求めます。

計算例

1990年7月15日を例に考えてみましょう。ここで \(m = 7\)、\(d = 15\)、年は1990年なので \(k = 90\)、\(j = 19\) となります。すると $$h = (15 + \lfloor 13\cdot 8/5 \rfloor + 90 + \lfloor 90/4 \rfloor + \lfloor 19/4 \rfloor + 5\cdot 19) \bmod 7 = (15 + 20 + 90 + 22 + 4 + 95) \bmod 7 = 246 \bmod 7 = 1$$ となり、これは日曜日を表します。つまり、1990年7月15日に生まれた人は日曜日生まれということになります。

変数定義

  • \(D\) — 月の日数。 カレンダーの日付をそのまま記入し、1から31です。\(D\)には調整は決して適用されません。
  • \(m\) — 調整された月番号。 3月 = 3から12月 = 12はそのままです。1月と2月は特別です: これらは前年の月13および月14として扱われます。これはツェラーの合同式が3月を年の開始として扱うためで、これにより閏日がサイクルの終わりに留まります。
  • \(Y\) — 調整された年。 日付が1月または2月の場合、カレンダー年から1を引きます(これらの月はこのスキームでは前年に属しているため)。他のすべての月は元の年を保持します。
  • \(K\) — 世紀の年。 \(K = Y \bmod 100\)、つまり調整された年の最後の2桁です。2024の場合は24、1999の場合は99です。
  • \(J\) — ゼロベースの世紀。 \(J = \lfloor Y / 100 \rfloor\)、切り上げなしの世紀番号です。2024の場合は20、1999の場合は19です。
  • \(h\) — 結果のデイコード。 すべての項を組み合わせた後、7を法とした余りで、上の結果コード表を使って曜日にマッピングされる0~6の値を与えます。

さらに計算済み例

例1 — 1月の日付(月と年のシフトを示す)

2000年1月15日を考えます。月が1月なので、\(m = 13\)と設定し、前年を使用するため、調整された年は\(Y = 1999\)です。その後、\(D = 15\)、\(K = 1999 \bmod 100 = 99\)、および\(J = \lfloor 1999/100 \rfloor = 19\)です。

$$h = \left(15 + \left\lfloor \tfrac{13(13+1)}{5} \right\rfloor + 99 + \left\lfloor \tfrac{99}{4} \right\rfloor + \left\lfloor \tfrac{19}{4} \right\rfloor + 5 \cdot 19 \right) \bmod 7$$

床関数の項は\(\lfloor 182/5 \rfloor = 36\)、\(\lfloor 99/4 \rfloor = 24\)、\(\lfloor 19/4 \rfloor = 4\)です。合計すると:\(15 + 36 + 99 + 24 + 4 + 95 = 273\)。次に\(273 \bmod 7 = 0\)なので、\(h = 0\) → 土曜日。2000年1月15日は確かに土曜日でした。

例2 — 閏日の誕生日(2000年2月29日)

2000年2月29日の場合、2月もシフトされます:\(m = 14\)で、調整された年は\(Y = 1999\)で、\(K = 99\)、\(J = 19\)、\(D = 29\)です。

$$h = \left(29 + \left\lfloor \tfrac{13(14+1)}{5} \right\rfloor + 99 + \left\lfloor \tfrac{99}{4} \right\rfloor + \left\lfloor \tfrac{19}{4} \right\rfloor + 5 \cdot 19 \right) \bmod 7$$

ここで\(\lfloor 195/5 \rfloor = 39\)、\(\lfloor 99/4 \rfloor = 24\)、\(\lfloor 19/4 \rfloor = 4\)です。合計すると:\(29 + 39 + 99 + 24 + 4 + 95 = 290\)で、\(290 \bmod 7 = 3\)なので、\(h = 3\) → 火曜日。2000年2月29日は火曜日でした。2000は400で割り切れるため閏年であることに注意してください。

例3 — 最近の日付(2023年7月4日)

2023年7月4日の場合、7月は通常の月なので\(m = 7\)で年は変わりません:\(Y = 2023\)、\(D = 4\)、\(K = 23\)、\(J = 20\)です。

$$h = \left(4 + \left\lfloor \tfrac{13(7+1)}{5} \right\rfloor + 23 + \left\lfloor \tfrac{23}{4} \right\rfloor + \left\lfloor \tfrac{20}{4} \right\rfloor + 5 \cdot 20 \right) \bmod 7$$

床関数は\(\lfloor 104/5 \rfloor = 20\)、\(\lfloor 23/4 \rfloor = 5\)、\(\lfloor 20/4 \rfloor = 5\)です。合計すると:\(4 + 20 + 23 + 5 + 5 + 100 = 157\)で、\(157 \bmod 7 = 3\)なので、\(h = 3\) → 火曜日。独立記念日2023は火曜日でした。

よくある質問

かなり昔の日付でも使えますか? はい。先発グレゴリオ暦上のどんな日付でも計算できます。ただし、1582年の暦改正より前の日付については、当時使われていたユリウス暦に基づく歴史的な記録とは結果が異なる場合があります。

うるう年はどう処理されますか? ツェラーの公式は剰余演算を通じてうるう年を自動的に処理するため、2月29日の日付も正しく計算されます。

今年の誕生日がすでに過ぎている場合は? 次の誕生日の結果は、今年の誕生日がすでに終わっている場合、自動的に翌年へと繰り越して計算されます。

最終更新: