閏年
閏年（うるうどし、じゅんねん、）とは、閏のある年である。これに対し、閏年ではない年を平年（）と呼ぶ。
閏年は、太陽暦においては太陽の運行と暦のずれを補正するために、平年より暦日が一つ多く、太陰太陽暦においては、月の運行とのずれを補正するために暦月が一つ多い。その追加された日や月を閏日・閏月、総称して閏と呼ぶ。閏の挿入規則を置閏法（ちじゅんほう）と呼ぶ。なお、「閏」の字が常用漢字表に含まれていないため、うるう年やうるう月、うるう日と書かれる場合もある。
太陽暦では、季節に暦を一致させるため、暦年の平均の長さを平均回帰年（365.242 189 44日≒365日5時間48分45.168秒）になるべく一致させる。
太陽暦では、平年は365日であり、閏年は閏日が挿入されて366日である。現在広く採用されているグレゴリオ暦では、閏年は400年間に97回ある。
古代エジプトの暦には閏年はなく、1暦年は常に365日であった。そのため、4.129年に1日の割合で暦と季節がずれた。当時すでに回帰年は365.25日という観測値が得られていたが、暦に反映されることはなかった。農民は暦ではなく恒星・シリウスの動きを頼りに農作業のスケジュールを決めた。
ユリウス暦は、紀元前46年に古代ローマで採用され、4年に1回を閏年としていた。但し、導入直後は混乱が見られ、3年に1回を閏年としたり、暫く閏年を置かない期間があった（詳細はユリウス暦を参照）。
ユリウス暦では、閏年には2月の日数を1日増やして29日とする。閏日を2月に挿入したのは、ローマ暦の初期にはMartius（後の3月）が年初でFebruarius（後の2月）が年末だったからである。厳密には共和政初期にIanuarius（後の1月）を年初とするように変更されたが、まだ古い慣習が残っていた。
ユリウス暦の置閏法では1暦年は平均365.25日となり、約128年に1日の割合で暦と季節がずれるが、これでも閏年を置かない場合に比べれば大きな進歩であった。しかし、1500年以上に亘って使われていくうちに、次第に暦と天文学上の現象がずれてきた。ローマ・カトリック教会では325年のニカイア公会議で春分を3月21日と定めてそれを基に復活祭の日付を決めることにしたが、日数が多いが故に、16世紀には天文学上の春分が暦の上では3月11日となってしまい、問題視されるようになった。
ユリウス暦では春分日がずれる問題を解決するため、ローマ教皇グレゴリウス13世は、当時を代表する学者たちを招集して委員会を作り、暦の研究を行わせた。こうして、1582年にグレゴリオ暦が制定された。グレゴリオ暦はその後数百年かけて各国で採用され、現在に至っている。
グレゴリオ暦では、次の規則に従って400年間に97回の閏年を設ける。
理解しづらければも参照するとよい
この置閏法によると、400年間における平均1暦年は、365+97/400=365.2425日（365日5時間49分12秒ちょうど）となり、平均回帰年との差は、1年当たり26.832秒（2015年における値）となって、かなり誤差が小さくなる。この誤差による暦と季節とのずれは約3320年で1日となる。上記の但し書きを1回で表すと、「"400年に3回、100で割り切れるが400で割り切れない年は、例外で平年とする"」ということになる。
グレゴリオ暦では、ユリウス暦と同じく、閏年には2月が29日まである。従って、現在のグレゴリオ暦では2月29日が閏日である。しかし、西洋の古い伝統を引き継ぐ地域では、2月24日が閏日とみなされる。詳細は「閏日#欧米」（欧米で2月24日が閏日であることの由来）を参照。
日本においては、閏年の判定は西暦ではなく皇紀（神武天皇即位紀元）によって行うことが法令（明治31年勅令第90号（閏年ニ関スル件））により定められ、現在に至っている。
明治三十一年勅令第九十号（閏年ニ関スル件・明治三十一年五月十一日勅令第九十号）
これは、現代の表記に直すと次の通りである。これは西暦年数から閏年を判定する方法と同値である。
なお、西暦何年が閏年であったかについては、「[日・月・火・水・木・金・土]曜日から始まる閏年」の項目を参照。
近代オリンピックの夏季オリンピックは4年に1回、西暦年が4で割り切れる年に開催される。そして、1924年に開始された冬季オリンピックも、1992年のアルベールビルオリンピックまでは、夏季と同じ西暦年が4で割り切れる年に開かれていた。このため、閏年はスポーツ関係を中心にしばしば「オリンピックイヤー」という名称で呼ばれている。しかし、第2回パリオリンピックが開催された西暦1900年は、閏年ではなく平年であった（100で割り切れるが400で割り切れない）ので、この呼称は正しいとは言えない。なお、西暦2100年も、100で割り切れるが400で割り切れない年数なので、夏季オリンピックが開かれる年であるが、平年である。
アメリカ合衆国大統領選挙も、最初の1789年の選挙を除き、西暦年が4で割り切れる年に実施されてきたが、それらの年は閏年とは限らない。
閏年の西暦年は必ず4で割り切れるので、閏年の十二支は子、辰、申のいずれかである。また、400年に3回の例外が来ない限り、同じ曜日の2月29日は28年周期で繰り返される（日→金→水→月→土→木→火→日）。
西暦2000年は、3番目のルールに該当する400年に1回の閏年であった。しかし、2番目までのルールをもって、2000年を平年と誤解する者もいた。これは2000年問題の一因でもあった。次回の4で割り切れる平年は西暦2100年である。
グレゴリオ暦の閏年に関する規則より、グレゴリオ暦では400年周期で同一パターンが繰り返されることになる。この400年の総日数（365日×400+97日=146 097日）は7で割り切れるため、曜日も400年周期で繰り返すことになる。そのため、特定の日が特定の曜日（例えば3月1日が月曜日）になる割合は、厳密にいうと7分の1にはならない。また、3番目のルールに当てはまる400年に1回の閏年（いわゆる「世紀末閏年」）の2月29日の曜日は、必ず火曜日になる。この例の発生は、次回は2400年の予定である。
1582年のグレゴリオ暦への改暦後も正教会はユリウス暦を使用し続けていたが、1923年、ギリシャ正教会などいくつかの正教会は修正ユリウス暦と呼ばれる暦を採用した。この暦の導入にあたって、日付をグレゴリウス暦と合わせた上で、置閏法を以下の様に改めた。
規則の3番目がグレゴリオ暦と異なる。100で割り切れる年のうち閏年となるのは、グレゴリオ暦では1600年、2000年、2400年、2800年、3200年、3600年…であるが、修正ユリウス暦では2000年、2400年、2900年、3300年、3800年…である。
この置閏年では、1暦年は平均365.242 222日となり、暦と季節が1日ずれるまでに約4万3500年を要する。これはグレゴリオ暦より精度がいい。
2800年2月28日までは両方の暦は一致している。しかし、2800年がグレゴリオ暦では閏年なのに対し、修正ユリウス暦では平年になり、そこで日付が1日ずれる。2900年は逆に修正ユリウス暦だけが閏年となり、日付は再び一致する。それ以後は断続的にこのようなずれが生まれ、5200年2月28日を最後に日付が一致することはなくなる。
太陽暦の置閏法には、約4年に1度の閏年に1日の閏日を挿入する以外の方法もあり得る。
余日及び閏日を廃止し、1暦年を週の整数倍にする方法で平年は年52週（即ち364日）・閏年53週（即ち371日）とする方法である。ただし、現行のグレゴリオ暦よりも暦と季節のずれが大きくなる点が問題点としてあげられている。これまでに以下の方法が提案された。
約29年毎に閏年を設け、その年に1週間の閏週を挿入するという置閏法も可能であり、そのような暦が提案されたこともある（）。この暦の根拠は次の通りである。
　0.2422日/年　×　29年　＝　7.024 日　　　したがって、29年間に7日の閏日（つまり1週間の閏週）を挿入すればよい。
純粋な太陰暦では、そもそも暦と季節とを一致させないので、太陽暦のような閏日はない。その代わり、平均朔望月（29.530 589日）が1日の整数倍でないため、暦と月相とのずれを補正するための閏日がある。
ヒジュラ暦（イスラム暦）での置閏法（または、日付の付け方）には、観測に基づく方法と計算に基づく方法があるが、ここでは後者の方法（）によるものを示す。
通常は小の月（29日）と大の月（30日）が交互に繰り返す。しかしこれでは1暦月は平均29.5日となり、月相とは少しずつずれていく。そこで、30暦年に11回、小の月に閏日を挿入して大の月とする。これにより1暦月は平均29.530 555日となり、朔望月とほぼ一致する。
閏日を含む年が閏年となり、暦年の長さは平年は354日、閏年は355日である。閏年はヒジュラ紀元の年数を30で割った余りが2、5、7、10、13、16、18、21、24、26、29となる年である。
この方法によるヒジュラ暦では、約2450年で暦と月相が1日ずれる。
太陰太陽暦では、暦を季節と月相の双方に一致させなければならない。そのため、理屈の上では2種類の閏がある。ただし、通常は暦と月相を一致させるシステムは閏とは呼ばれず、暦と季節を一致させるための閏のみが存在する。
太陰太陽暦では1暦年の長さは平均朔望月のほぼ整数倍でしか選べない。1平均回帰年は12.368平均朔望月なので、平年は12ヶ月（354日前後）、閏年は閏月が挿入されて13ヶ月（384日前後）となる。
閏年を2.715年に1回入れれば、平均暦年と平均回帰年が一致する。実際に行われた置閏法には、8年に3回、19年に7回（メトン周期）、76年に28回（カリポス周期）などがある。
中国暦ならびに派生した和暦（以下、まとめて中国暦と書く）では、太陽と月の運行を実際に観測し、季節と暦のずれが最小になるように閏月を入れる。具体的に述べると次のようになる。
暦月は朔日（月齢0を含む日）から次の朔日の前日までとする。冬至（太陽が黄経270°を通過する日）を含む暦月を11月とし、他の各中気（黄道上の太陽の位置が黄経30°の整数倍である日）を含む暦月を1月から12月とする。しかし、中気から中気までは平均すると30.437日で暦月の平均（=平均朔望月）より長いため、中気を含まず名前の付かない暦月が残ることがある。その暦月が閏月となる。例えば、閏月が7月と8月の間に生じたらその月は「閏7月」と呼ばれる。そして、閏月を含む年が閏年である。なお、中気の間隔は一定ではないため1暦月に複数の中気が含まれることがあるので、それに備え優先順位など細則が決められている。
中国暦では、暦と月相の一致も実際の新月に暦月をスタートさせることで実現されている。そのため、29日の小の月と30日の大の月が不規則に出現する。ただしヒジュラ暦のような「平年」といえる状態がないため、これは閏とはいわない。
中国暦では閏年、閏月、月の大小のパターンに規則性はなく、遠い未来の暦は決定できない。その代わり、太陽と月の運行の観測を怠らず正しく運用されれば暦と月相は永久にずれることはない（ただし、太陰太陽暦である以上、暦と季節の間に最大±0.5朔望月=約15日の差はできる）。
閏年は季節と月相に対する暦のズレを補正するシステムだが、閏秒はこれとはまったく別の目的のためのもので暦とは無関係であり、原子時計により決められる協定世界時と地球の自転で決まる世界時との差を補正するためのシステムである。したがって、閏秒が実施される年であってもその年を閏年とはいわない。
コンピュータシステムにおいて閏年を判定するアルゴリズムの記述には問題がある場合が多く、しばしばこれが原因でシステムは重大な障害を起こす。これは例えば、「4で割り切れる年」としかしていなかったり、year == 2000 || year == 2004のようにある程度先の閏年しかコードしていないなどが挙げられる。
この他、年数処理のバグにより、年自体を誤って判断することで閏年関係のシステムに重大な障害が発生したケースもある。2010年には二進化十進表現の問題から、2016年と認識されて「閏年である」と誤認したバグが多くみられた。→2010年問題#年数処理のバグ
グレゴリオ暦の閏年は次のようにすると正しく判定できる。
条件1.　400で割り切れる場合は閏年条件2.　400で割り切れない場合、100で割り切れる場合は平年条件3.　条件1.2.を両方とも満たさない(400で割り切れず、かつ100でも割り切れない場合),4で割り切れれば閏年、そうでない場合は平年ExcelではIFS関数を使用し以下のように記述できる。
=IFS(MOD(A1,400)=0,"閏年",MOD(A1,100)=0,"平年",MOD(A1,4)=0,"閏年",1,"平年")（Excelなど）
条件1.　400で割り切れる　または　（100で割り切れずかつ4で割り切ることができれ）ば閏年、そうでなければ平年Excelや他のプログラムでは以下のように記述できる。
=IF(OR(MOD(A1,400)=0,AND(MOD(A1,4)=0,MOD(A1,100)<>0)),"閏年", "平年")（Excelなど）A1には西暦の数字が入るとする
グレゴリオ暦の場合、2月29日生まれの者の誕生日は閏年に限り到来し、平年に誕生日は存在しない。このため、誕生日を基準に何かを行う場合は、平年ではその前後の日（2月28日か3月1日）を誕生日とみなす必要がある。
日本の法律では、誕生日を基準とした行政手続に限り「みなし誕生日」を2月28日としている。また、年齢計算については、もともと期間の満了は起算日応当日の前日であるところ、起算日を例外的に1日早く初日（出生日）とする関係で、1年間の満了（加齢）も1日早く誕生日の前日となる。このため、2月29日生まれの者は、平閏を問わず、毎年2月28日24時に加齢される（→満年齢、年齢計算ニ関スル法律）。
C言語入門　:うるう年判定プログラム