概要 2つの日付(例えば、自分の誕生日と今日)の間の経過日数を求めたくなったとします。 ぱっとは出てきませんね。 原因は主に、毎月の日数がばらばらなのと、うるう年のせいなんですが。 まあ、2つの日付の差というとちょっと面倒なんで、 とりあえず、グレゴリウス暦1年1月1日を基準にして、経過日数を求めることにします。 (グレゴリウス暦施行(早い国で1582年)より前の日付も、 形式的にグレゴリウス暦とみなして計算します。) この基準日からの経過日数が分かれば、その差を取ることで、2つの日付の差も分かります。 まあ、大筋だけ言うと、 1年1月1日からy年m月d日までの経過日数は、 dy: ( y −1 ) × 365 dl:y年までのうるう年の回数 dm: 1月1日からm月1日までの日数 d という4つに分けて考えて、その和 dy + dl + dm + d −1 で求まります。 最初と最後の項