MCPで接続 →

計算を入力してください

公式

広告

結果

年齢差
5 yr 5 mo 14 d
2つの誕生日の差
5
か月 5
14
合計日数 1,991

年齢差計算ツールとは?

このツールは、2人の生年月日からその差を正確に求めるものです。それぞれの誕生日を入力すると、年齢差を「年・月・日」で表示し、さらに2人の間の合計日数も算出します。どちらが年上かを気にする必要はありません。早い方の日付を自動的に基準(開始日)として計算するため、入力順に関係なく正しい結果が得られます。

使い方

「Person 1」と「Person 2」それぞれの生まれた年・月・日を選び、送信するだけです。結果には、完全な年数・残りの月数・残りの日数に分けたカレンダー上の差に加えて、より正確に比較できる経過日数の合計が表示されます。

計算式の仕組み

年齢差は、終了日の各要素から開始日の各要素を引くことで求めます。

$$\text{diff} = |\text{date}_1 - \text{date}_2| \rightarrow \{\text{years},\ \text{months},\ \text{days}\}$$

日数の計算結果がマイナスになった場合は、1か月を繰り下げて、開始月の日数を足します。

$$\text{days} = \text{days} + \text{daysInMonth}(\text{start})$$

その結果、月の値がマイナスになった場合は、1年を繰り下げて12か月を足します。合計日数は、2つの日付のミリ秒差を86,400,000(1日あたりのミリ秒数)で割り、最も近い整数の日数に四捨五入して求めます。

$$\text{totalDays} = \left\lfloor \frac{|t_1 - t_2|}{86400000} \right\rceil$$

2つの誕生日と、その間隔を年・月・日に分けて示すタイムライン
年齢差は2つの誕生日の間隔で、年・月・日に分けられます。

計算例

Person 1:1990年1月31日。Person 2:1990年3月1日。日:\(1 - 31 = -30\) なので繰り下げ。月が \(-1\)、日が \(-30 + 31\)(1月の日数)\(= 1\) となります。月:\(-1 + 12 = 11\)、年は1減って0…繰り下げ処理後は「0年1か月1日」となります。標準的なカレンダー解釈に合わせて調整すると、日数は予想どおりプラスの値で算出されます。

矢印でつながれた2枚のカレンダーが2つの日付の間隔を示す図
後の日付から前の日付を引くと、全体の期間が求められます。

よくある質問

2人を入力する順番は関係ありますか? いいえ、関係ありません。常に早い方の誕生日を開始日として扱うため、どちらを先に入力しても結果は同じです。

うるう年にも対応していますか? はい。各月の実際の日数(うるう年の2月を含む)を踏まえてカレンダー計算を行います。

「合計日数」とは何を意味しますか? 2つの日付の間にあるカレンダー上の日数を、そのまま数えた値です。「年・月・日」の内訳ではなく、1つの数値でまとめて知りたいときに便利です。

最終更新: