本ページにはプロモーションが含まれています。

カレンダーを何気なく眺めていて、ふと疑問に思ったことはありませんか。

私たちは小学校の理科や算数の授業で「4年に1度はうるう年(閏年)がやってくる」と習いますよね。
2月が29日まである特別な年。オリンピックが開催される年と重なることが多いので、なんとなく「4で割れる年はうるう年」と覚えている方も多いのではないでしょうか。

ですが、実はこのルールには、あまり知られていない「続き」があるんです。
それが、「100で割り切れる年は、原則としてうるう年ではない」という、少し直感に反する厳格な決まりごとです。

「えっ、でも2000年は100で割り切れるけど、うるう年だったじゃないか」
そう思われた方、その通りです。
実は2000年は、さらにその奥にある「例外の例外」という特別なルールが適用された、400年に1度のレアケースだったのです。

では、私たちが次に迎える世紀の変わり目、2100年はどうなるのでしょうか?
実は、2100年はうるう年ではなく「平年」になります。
つまり、2100年の2月29日は存在しません。

この不思議なルールの背景には、地球と太陽が織りなす時間のズレをミリ秒単位で調整しようとした、先人たちの執念とも言える知恵と計算が隠されています。
また、お仕事でエクセル(Excel)やプログラミング言語を使って日付データを扱うエンジニアや事務職の方にとっては、この判定ロジックや確率は、システムバグを引き起こしかねない避けて通れない問題でもあります。

この記事では、そんな暦の奥深い謎や、なぜそんな複雑なルールが必要なのかという理由について、じっくりと紐解いていきましょう。
明日誰かに話したくなるような、カレンダーのトリビアをお届けします。

記事のポイント
  • 100で割り切れる年が原則として平年になる天文学的な理由と仕組み
  • 2100年や2000年、1900年など世紀の変わり目における判定の違い
  • 400年間に97回という中途半端なうるう年の確率と計算の裏側
  • エクセルやプログラムで日付を扱う際に注意すべき「1900年バグ」などの落とし穴

100で割り切れる年はうるう年?仕組みを解説

私たちが普段、スマホや手帳で何気なく確認しているカレンダー。
そこには、季節のサイクルと日付をぴったり合わせるための、人類の歴史そのものと言える非常に精巧な仕組みが組み込まれています。

「4年に1度、1日増やすだけでいいんじゃないの?」
そう思われるかもしれませんが、実は宇宙の法則はそれほど単純ではありませんでした。
ここでは、なぜ「4年に1度」だけではダメなのか、そして「100で割り切れる年」に隠された重要な役割について、順を追って見ていきましょう。

100で割り切れる年はうるう年?仕組みを解説
イメージ:日本の行事・風物詩ガイド

平年の意味とカレンダーのズレ

まず、基本となる「平年(へいねん)」という言葉の意味から、しっかりと確認しておきましょう。
平年とは、うるう年ではない普通の年、つまり2月が28日までしかなく、1年が365日ある年のことを指します。

暦(こよみ)の本来の目的は、人間の生活スケジュールを、季節の変化(地球の公転運動)に合わせることです。
農業にしても祭礼にしても、季節と日付がズレてしまっては困りますよね。
しかし、地球が太陽の周りを一周して元の位置(春分点)に戻ってくるのにかかる実際の時間――これを天文学用語で「太陽年(Solar Year)」または「回帰年(Tropical Year)」と呼びますが――は、きっかり365日ではありません。
また、単純な「365.25日」でもないのです。

現代の精密な天文学的測定によると、1平均回帰年の長さは約365.24219日とされています。
これを私たちが使う時間の単位に分解すると、「365日と5時間48分45秒強」となります。

ここでのポイントは、「365日ちょうど」よりも、約5時間49分ほど余分にかかっているという事実です。
もし、この端数を完全に無視して、毎年「1年は365日」としてカレンダーを使い続けたらどうなるでしょうか。

1年で約6時間(正確には5時間48分45秒)のズレが生じます。
4年経つと、6時間 × 4 = 24時間で、約1日のズレになります。

「たった1日なら大したことない」と思うかもしれませんが、これが120年続けば約1ヶ月も季節がズレてしまいます。
真夏に正月が来たり、雪の中で桜祭りをすることになってしまうわけですね。

そこで考案されたのが、「4年ごとに1日(閏日)を追加して、暦を遅らせる」というアイデアです。
これがうるう年の基本的な考え方であり、紀元前の古代ローマ時代から人類が採用してきた解決策なのです。
しかし、これだけではまだ、宇宙の精密さには追いつけなかったのです。

平年の意味とカレンダーのズレ
イメージ:日本の行事・風物詩ガイド

グレゴリオ暦のルールと改暦の歴史

かつてヨーロッパ世界で長く使われていた「ユリウス暦(Julian Calendar)」は、紀元前46年にユリウス・カエサルが制定したもので、単純に「4年に1度うるう年を入れる」というルールで運用されていました。

このユリウス暦のルールだと、1年の平均の長さは「365.25日」となります。
「365日 + (1日 ÷ 4年) = 365.25日」という計算ですね。
しかし、先ほどお話しした実際の太陽年は「365.24219日」です。

この2つの数字を引き算してみましょう。
365.25 - 365.24219 = 0.00781日

1年あたり、約0.00781日のズレが生じます。
これを時間に換算すると、約「11分14秒」です。
ユリウス暦は、実際の太陽の動きよりも、1年につき11分14秒だけ「長すぎた」のです。

「1年にたった11分でしょ? カップラーメン数個分じゃないか」
そう笑うことなかれ。このわずかな誤差が、歴史を動かす大問題を引き起こしました。
このズレが128年積み重なると、約1日の誤差になります。
そして、ユリウス暦が1600年近くも使い続けられた結果、16世紀の後半には、なんと暦と季節が約10日間もズレてしまったのです。

当時、キリスト教社会において最も重要な祝祭である「復活祭(イースター)」の日付は、「春分の日」を基準に決められていました。
教会暦上の春分は3月21日に固定されていましたが、実際の天体としての春分は、11分ずつの蓄積により、3月11日頃まで早まってしまっていたのです。
このまま放置すれば、復活祭が夏になり、やがては秋になり……と、宗教的な儀式と季節の意味合いが崩壊してしまいます。

この事態を重く見たローマ教皇グレゴリウス13世は、天文学者たちに命じて抜本的な改暦を決断しました。
そして1582年、より高精度な新しい暦が導入されました。
これが、現在私たちが世界標準として使っているグレゴリオ暦(Gregorian Calendar)です。

グレゴリオ暦では、ユリウス暦で生じていた「入れすぎた閏日」を間引くために、以下の3段階のフィルター(置閏法)を設けました。
これが、今回のテーマである「100年ルール」の正体です。

【グレゴリオ暦の置閏(ちじゅん)ルール 3ヶ条】

  1. 第1ルール(基本):
    西暦年が4で割り切れる年は、原則として「うるう年」とする。
  2. 第2ルール(100年の例外):
    ただし、100で割り切れる年は「平年」とする。(ここでうるう年を取り消す)
  3. 第3ルール(400年の例外):
    しかし、400で割り切れる年は例外として「うるう年」とする。(ここで平年を取り消して復活させる)
グレゴリオ暦のルールと改暦の歴史
イメージ:日本の行事・風物詩ガイド

つまり、「100で割り切れる年」を平年にすることで、100年に1回、本来あるはずだった2月29日を「消去」しているのです。
これにより、カレンダーの進行を少しだけ早め(日数を減らし)、太陽の運行と同期させているわけですね。
ちなみに、1582年の改暦時には、それまでに溜まっていた10日間のズレを一気に解消するため、「1582年10月4日の翌日を10月15日とする」という荒技が実行されました。
歴史上、この10日間は存在しない空白の期間となっているんですよ。

2100年はうるう年?なぜ平年か

さて、このグレゴリオ暦のルールを、私たちの未来に当てはめてみましょう。
私たちが次に直面する世紀の変わり目、西暦2100年はどうなるのでしょうか。

まず、2100という数字は「4」で割り切れます。(2100 ÷ 4 = 525)
これだけ見ればうるう年のように見えます。

しかし、同時に「100」でも割り切れます。(2100 ÷ 100 = 21)
ここで第2ルールが発動し、「平年」の候補になります。

最後に、第3ルールである「400」で割ってみましょう。
2100 ÷ 400 = 5.25
割り切れませんね。余りが出ます。

したがって、400年ごとの復活ルールは適用されず、第2ルールの判定が確定します。
結論として、2100年は「平年」となります。
カレンダーには2月28日までしかなく、翌日は3月1日となります。

これは、現代を生きる私たちにとって、少々衝撃的な出来事になるかもしれません。
なぜなら、うるう年は「4年ごとに必ず来るもの」という感覚が染み付いているからです。
具体的に見てみると、2096年は4で割り切れるので「うるう年」です。
その4年後の2100年は「平年」です。
その次のうるう年は、さらに4年後の2104年になります。

つまり、2096年から2104年まで、なんと8年間もうるう年が来ない(2月29日がない)期間が発生するのです。
前回の「8年空き」は1896年から1904年の間でしたから、もしあなたが2100年まで長生きされたなら、人生で初めて経験する「うるう年の空白期間」となるでしょう。
この時期には、もしかするとカレンダー業界やシステム運用担当者の間で、ちょっとした混乱や注意喚起が行われるかもしれませんね。

2100年はうるう年?なぜ平年か
イメージ:日本の行事・風物詩ガイド

400年間に97回あるうるう年の確率

少し数字のお話になりますが、このグレゴリオ暦の複雑なルールによって、うるう年は長期的に見てどのくらいの頻度(確率)でやってくるのでしょうか。
400年という期間をワンセットとして計算してみると、その精度の高さに驚かされます。

一緒に計算してみましょう。

まず、単純に「4年に1度」のルールだけなら、400年の間にうるう年は何回あるでしょうか。
400 ÷ 4 = 100回
ですね。

次に、「100年ごとの除外ルール」を適用します。
100年目、200年目、300年目、400年目の4回が除外対象になります。
100回 - 4回 = 96回

最後に、「400年ごとの復活ルール」を適用します。
400年目の1回だけは、やっぱりうるう年に戻します。
96回 + 1回 = 97回

つまり、グレゴリオ暦では400年間に97回のうるう年が設定されていることになります。
確率で言うと、97 ÷ 400 = 0.2425 つまり 24.25% です。

では、これによって1年の平均日数はどうなるでしょうか。
400年間の総日数は、平年の日数(365日×400年)に、うるう年の97日を足したものになります。
(365 × 400) + 97 = 146,097日
これを400年で割って、1年あたりの平均を出します。
146,097 ÷ 400 = 365.2425日

この「365.2425日」という数字を、最初に紹介した実際の太陽年「365.24219日」と比べてみてください。
その差は、わずか 0.00031日
時間に換算すると、1年あたり約27秒しかズレません。
ユリウス暦で11分以上あったズレが、グレゴリオ暦では27秒まで縮まったのです。

この計算によると、グレゴリオ暦が実際の季節と1日ズレるのには、約3,200年以上かかると言われています。
1582年に作られたシステムが、これほどの精度を持っているなんて、当時の天文学者や数学者の執念には脱帽するしかありません。
ちなみに、3200年後や4000年後には、さらなる微調整として「4000で割り切れる年は平年にする」といった新ルールが追加される可能性も議論されていますが、それはまた遥か未来のお話です。

400年間に97回あるうるう年の確率
イメージ:日本の行事・風物詩ガイド

簡単なうるう年の判定方法と計算

ここまでのお話を整理して、ある年がうるう年かどうかを頭の中でパッと判定するためのフローチャートを作ってみましょう。
例えば、歴史上の出来事があった年や、未来の予定を立てる年など、「1900年」「2000年」「2024年」を判定したい場合、大きな数字(例外の例外)から順番にチェックしていくのが間違いを防ぐコツです。

【うるう年判定の3ステップ・フローチャート】

判定したい西暦年を思い浮かべてください。

Step 1:その年は「400」で割り切れますか?
YES → 問答無用でうるう年です。(例:1600年、2000年、2400年)
NO → Step 2へ進んでください。

Step 2:その年は「100」で割り切れますか?
YES → 残念ながら平年です。(例:1800年、1900年、2100年)
NO → Step 3へ進んでください。

Step 3:その年は「4」で割り切れますか?
YES → うるう年です。(例:2024年、2028年、2096年)
NO → 普通の平年です。(例:2023年、2025年)

多くの人が混乱する原因は、2000年という年が特殊すぎたことにあります。
2000年は「100で割り切れる」年でした。本来なら平年になるはずの年です。
しかし同時に「400でも割り切れる」ため、例外中の例外としてうるう年になりました。

簡単なうるう年の判定方法と計算
イメージ:日本の行事・風物詩ガイド

私たち現代人の多くは、この「400年に1度の特別なうるう年」を偶然にも体験してしまった世代なのです。
そのため、「世紀の変わり目(00年)でも2月29日はあるのが普通」という強烈な刷り込みがなされてしまいました。
これが、2100年をうるう年だと勘違いしてしまう最大の原因なんですね。

100で割り切れる年のうるう年とエクセルの罠

さて、ここからは少し視点を変えて、パソコンやデジタルシステム上でのうるう年の扱いについてお話しします。
現代社会では、手計算でカレンダーを作ることは稀で、ほとんどがコンピュータ任せですよね。

しかし、実はお仕事でよく使う表計算ソフト「Excel(エクセル)」には、この「100で割り切れる年」に関する有名な落とし穴が存在するのをご存知でしょうか。
知っておかないと、契約期間の計算や利息計算、あるいは歴史データの分析などで思わぬミスをしてしまうかもしれません。
デジタルの世界に残された、不思議な「歴史的バグ」の事情をご紹介します。

100で割り切れる年のうるう年とエクセルの罠
イメージ:日本の行事・風物詩ガイド

エクセルでうるう年を判定する関数

まず、実務的なお話として、エクセルを使ってある年がうるう年かどうかを正しく判定する方法をご紹介します。
もしあなたが「2024」や「2100」といった年が入力されたセル(仮にA1とします)に対して、それがうるう年かどうかを判別したい場合、どのような数式を組みますか?

「4で割って余りが0なら……」とIF関数とMOD関数を駆使して数式を組むのも一つの手ですが、条件分岐が多くて複雑になりがちです。
私が最もおすすめするのは、エクセルの日付認識機能を逆手に取った、以下のシンプルな方法です。

「その年の3月1日の前日が、29日かどうかを調べる」

具体的には、以下のような数式を使います。
=DAY(DATE(A1,3,1)-1)=29

この数式の意味を分解してみましょう。

  1. DATE(A1,3,1) で、指定された年の「3月1日」の日付データを作ります。
  2. そこから -1 して、前日(つまり2月の末日)の日付にします。
  3. DAY(...) 関数で、その日付の「日」の部分(28か29)を取り出します。
  4. それが =29 かどうかを判定します。

結果が「TRUE」なら、2月末日が29日だった=うるう年。
結果が「FALSE」なら、2月末日が28日だった=平年。

この方法なら、グレゴリオ暦の複雑なルール(400で割れるか、100で割れるか等)を人間が意識しなくても、エクセルが内部で正しく処理してくれます。
特に2100年などの判定でも、この関数なら間違えることなく「FALSE(平年)」と返してくれますので、非常に信頼性が高いですよ。

エクセルでうるう年を判定する関数
イメージ:日本の行事・風物詩ガイド

1900年がうるう年になるバグ

「エクセルに任せておけば安心」
そう申し上げたいところですが、実はエクセルにはたった1つだけ、致命的な弱点があります。
それが、IT業界で有名な「1900年うるう年問題」です。

衝撃的な事実をお伝えします。
エクセルのセルに「1900/2/29」と入力してみてください。

……いかがでしょうか?
エラーにならず、日付として認識され、右寄せで表示されたのではないでしょうか。

先ほど詳しく解説した通り、1900年は100で割り切れるため、グレゴリオ暦では間違いなく平年です。
つまり、歴史上のカレンダーに「1900年2月29日」という日は存在しません。
それなのに、世界最高峰の表計算ソフトであるエクセルは、これを「存在する日」として扱ってしまうのです。
これにより、エクセル上での1900年1月1日から2月28日までの曜日は、実際の歴史上の曜日と1日ズレてしまっています。

なぜこんなバグが放置されているのでしょうか。
マイクロソフト社の怠慢? いえ、そこには大人の事情がありました。

1900年がうるう年になるバグ
イメージ:日本の行事・風物詩ガイド

【1900年うるう年問題の原因と背景】

この問題のルーツは、1980年代のPC黎明期にまで遡ります。
当時、表計算ソフトのシェアを独占していたのは「Lotus 1-2-3(ロータス ワン・ツー・スリー)」というソフトでした。
実は、このLotus 1-2-3の開発段階で、メモリ節約のためかプログラムミスか、1900年を誤ってうるう年として処理する仕様が含まれてしまっていたのです。

その後、マイクロソフトがExcelを開発してシェアを奪おうとした際、最も重要だったのが「Lotus 1-2-3との完全な互換性」でした。
Lotusで作ったファイルをExcelで開いたときに、日付や計算結果が変わってしまっては、誰も乗り換えてくれません。
そのため、マイクロソフトは「あえて」この間違い(1900年をうるう年とする誤った仕様)をExcelにも実装したのです。

現在でも、マイクロソフトの公式見解として「既存の膨大なユーザーデータへの影響を避けるため、この仕様は修正しない」と明言されています。
歴史的な経緯を尊重(あるいは忖度)した結果、令和の時代の最新エクセルにも、この「亡霊」のようなバグが生き続けているのです。
もしあなたが歴史研究や家系図作成などで、1900年前後の日付を扱う場合は、この「存在しない1日」の扱いに十分注意してください。
(出典:国立天文台 暦計算室等の資料に基づく暦の定義より)

Pythonで記述する判定コード

プログラミングの世界でも、このうるう年判定は「基本にして奥義」のような扱いを受けています。
Python(パイソン)やJavaScriptなどの言語を学ぶ際、初心者が練習問題として必ずと言っていいほど直面するのがこの判定ロジックです。

ここで、初心者がやってしまいがちな「バグを含んだコード」と、「正しいコード」を比較してみましょう。

× 間違いやすい例(危険なコード):
if year % 4 == 0: return True
「4で割り切れたらうるう年」とだけ書いてしまうパターンです。
これだと、2100年や2200年、2300年をすべて誤って「うるう年」と判定してしまいます。

○ 正しい例:
正しいロジックを日本語で表現すると、「(4で割り切れる かつ 100で割り切れない) または (400で割り切れる)」となります。
これをPythonコードで書くと以下のようになります。

def is_leap(year):
    return (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0)

この andor といった論理演算子の組み合わせが非常に重要なんですね。
ITエンジニアの方々は、こうした条件分岐を正しく組み合わせることで、2100年問題などの将来起こりうるバグを未然に防いでいるのです。
もしご自身でウェブサイトのカレンダー機能などを作ることがあれば、ぜひ「2100年」をテストデータに入れて、正しく2月28日で終わるか確認してみてくださいね。

Pythonで記述する判定コード
イメージ:日本の行事・風物詩ガイド

世紀末のうるう年判定早見表

最後に、過去から未来にかけての「100で割り切れる年(世紀末年)」が、結局うるう年なのか平年なのか、一目でわかる早見表を作成しました。
1700年や1800年の平年だった時代、そして私たちが経験した2000年の特異性が見えてきます。
歴史の確認や、未来の予測にお役立てください。

西暦4で
割れる
100で
割れる
400で
割れる
判定結果備考・歴史的背景
1600年うるう年グレゴリオ暦制定後、
最初の400年倍数年。
関ヶ原の戦いの年。
1700年×平年プロテスタント諸国がグレゴリオ暦を
採用し始めた時期。
1800年×平年伊能忠敬が測量を開始した頃。
この年も2月29日はなし。
1900年×平年Excelのバグの震源地。
本来は平年だが、ソフト上は
うるう年として扱われる。
2000年うるう年400年に1度の「例外の例外」。
多くの人がこれを
「普通」と誤解する原因となった。
2100年×平年次に訪れる「うるう年ではない」世紀末。
2096年の次は2104年まで飛ぶ。
2400年うるう年次回の400年倍数年。
遥か未来の話。
世紀末のうるう年判定早見表
イメージ:日本の行事・風物詩ガイド

100で割り切れる年はうるう年かのまとめ

今回は、検索されている「100で割り切れる年 うるう年」というキーワードをきっかけに、暦の奥深い世界をご紹介しました。

普段何気なく使っているカレンダーですが、それは単なる数字の羅列ではありません。
「太陽の周りを回る地球の動き」という物理的な現実と、「規則正しい生活を送りたい」という人間の都合。
この2つのバランスを極限まで調整しようとした、数千年にわたる人類の試行錯誤の結晶こそが、私たちが目にしているカレンダーなんですね。

今回の記事のポイントを、最後にもう一度おさらいしておきましょう。

  • 原則:
    100で割り切れる年は、原則として「平年」であり、うるう年ではない。(調整のため間引かれる)
  • 例外:
    ただし、400で割り切れる場合(2000年など)は例外的にうるう年となる。(間引きすぎた分を戻す)
  • 未来:
    私たちが次に迎える2100年は、100で割り切れるが400では割れないため「平年」である。
  • 注意:
    エクセルでは1900年をうるう年とするバグが仕様として残っているため、古い日付の計算には注意が必要。

2100年はまだ少し先の話ですが、この知識があれば、毎年2月が来るたびに、カレンダーを見る目が少し変わるかもしれません。
正確な情報は公式サイトをご確認ください。最終的な判断は専門家にご相談ください。
季節の移ろいを正確に刻むための先人たちの知恵と情熱に、改めて感謝しつつ、今日という一日を大切に過ごしていきたいですね。

暦の記事一覧

プロフィール
userimg
とっしー
運営者のとっしーです。
自然に囲まれて生活している私自身の経験から、「知ると暮らしが豊かになる」日本の行事や風物詩の魅力を発信しています。
情報の信頼性を何より大切に、日々の暮らしに役立つ知恵をお届けします。
おすすめの記事