閏年のルール
現在我々が使っているグレゴリオ暦においては、次のような閏年のルールがある。
- 4 で割り切れる年は閏年である。
- ただし、100 で割り切れる年は平年である。
- ただし、400 で割り切れる年は閏年である。
カレンダー表示は正しいか

このルールを守っていないプログラムはかなり多い。

手元に自動カレンダー式の時計があったら取扱説明書に目を通してほしい。「2099 年(令和 81 年)まで使えます」と書いてある時計は、閏年のルールが組み込まれていないとみてよい。

手元に自動カレンダー式の時計があったら取扱説明書に目を通してほしい。「2099 年(令和 81 年)まで使えます」と書いてある時計は、閏年のルールが組み込まれていないとみてよい。
前述の 1番目のルール――4 で割り切れる年は閏年である――だけでも、1901 年(明治 34 年)から 2099 年までのカレンダーを表示できる。そこで、論理回路を簡単にするために、2,3番目のルールを割愛しているわけである。まあ、これから 2100 年(令和 82 年)まで生きている人はほとんどいないから、実用上差し支えないだろう。

しかし、これがパソコン用の汎用アプリケーションとなると、少々困る。100 年前の歴史データを扱ったり、100 年先のシミュレーションを行うことは“ありがち”な作業だからである。

たとえば Microsoft Excel であるが、マニュアルによると 1899 年(明治 32 年)以前の日付を扱えないことになっている。これはアプリケーションの“仕様”なのだが、実際の製品を使ってみると、1900 年(明治 33 年)1 月 1 日から同年 2 月 28 日までの曜日計算が間違っている。さらに、"1900/2/29"と入力すると日付型と解釈され、曜日計算もできてしまう。これは明らかなバグである。
これは Windows版に限ったバグで、Macintosh版では 1903 年(明治 36 年)以前の日付を扱えないように改められている。しかし、Windows版は Excel 2003 になってもバグが残ったままである。ちなみに、"2100/2/29"はきちんとエラーとなる。これはマイクロソフトに限った問題ではない。他社のアプリケーションでも注意した方がよい。

また、プログラムを製造する場合は、利用する日付計算関係のライブラリや組み込み関数が、きちんとルールを守っているかどうか確認した方がよい。とくに Visual Basic 系は注意が必要だ。

しかし、これがパソコン用の汎用アプリケーションとなると、少々困る。100 年前の歴史データを扱ったり、100 年先のシミュレーションを行うことは“ありがち”な作業だからである。

たとえば Microsoft Excel であるが、マニュアルによると 1899 年(明治 32 年)以前の日付を扱えないことになっている。これはアプリケーションの“仕様”なのだが、実際の製品を使ってみると、1900 年(明治 33 年)1 月 1 日から同年 2 月 28 日までの曜日計算が間違っている。さらに、"1900/2/29"と入力すると日付型と解釈され、曜日計算もできてしまう。これは明らかなバグである。
これは Windows版に限ったバグで、Macintosh版では 1903 年(明治 36 年)以前の日付を扱えないように改められている。しかし、Windows版は Excel 2003 になってもバグが残ったままである。ちなみに、"2100/2/29"はきちんとエラーとなる。これはマイクロソフトに限った問題ではない。他社のアプリケーションでも注意した方がよい。

また、プログラムを製造する場合は、利用する日付計算関係のライブラリや組み込み関数が、きちんとルールを守っているかどうか確認した方がよい。とくに Visual Basic 系は注意が必要だ。
クレジットカードが使えなくなる?

三井住友カードによると、有効期限が 2016 年(平成 28 年)2 月の IC チップ付きクレジットカードは、2 月 29 日に IC カードによる取り引きができなくなるという。理由は明らかにされていないが、うるう年処理の不具合とみられる。

同様の問題は、2012 年(平成 24 年)2 月 29 日、東京三菱UFJ銀行で発生している。

同様の問題は、2012 年(平成 24 年)2 月 29 日、東京三菱UFJ銀行で発生している。
公衆電話機が故障した理由

2008 年(平成 20 年)1 月 31 日、NTT の「DMC-8」という緑色のデジタル公衆電話が利用できなくなった。2 月 4 日現在、使えなくなった公衆電話機は、NTT 東日本管内が 2,329 台、NTT西日本管内が 878 台の、合計3,207 台に及んだ。
NTT 東日本のホームページでは、故障の原因について次のように説明している。
電話機の修理には現場で 1 台ずつ行い、2 月 7 日夕方にすべて復旧した。

一方、ウィルコムが発売したばかりのケーイーエス製電話機「9+(ナインプラス)」で、自動日時補正の機能をオンにすると、日付補正機能が正しく作動しない可能性が判明した。ウィルコムは「うるう年を誤認した」とし、出荷した 6,000 台のソフトウエアの修正を無償で行う。

また、NTT 東西のブロードバンド動画配信サービス「4th MEDIA」用セットトップボックス「Picture Mate 300」が正常に起動しなくなった。29 日午前 0 時以降に主電源を立ち上げると、機器が正常に起動しないという。うるう年の処理に問題があり、誤作動を起こしているとみられる。
当面の対応として、使用可能なユーザーは主電源を切らないよう呼びかけている。
公衆電話機は、定期的に、あるいは料金回収時の公衆電話機の開閉時等に、動作の正常性を確認する自己診断機能を有しています。この機能は、次回診断日の自動設定も行います。
今回の故障は、公衆電話機の開閉等による次回診断日設定の際、「うるう年」の処理を行うソフトウェアに処理誤りが発生し、次回診断日の設定ができず機能停止したものです。
電話機の修理には現場で 1 台ずつ行い、2 月 7 日夕方にすべて復旧した。

一方、ウィルコムが発売したばかりのケーイーエス製電話機「9+(ナインプラス)」で、自動日時補正の機能をオンにすると、日付補正機能が正しく作動しない可能性が判明した。ウィルコムは「うるう年を誤認した」とし、出荷した 6,000 台のソフトウエアの修正を無償で行う。

また、NTT 東西のブロードバンド動画配信サービス「4th MEDIA」用セットトップボックス「Picture Mate 300」が正常に起動しなくなった。29 日午前 0 時以降に主電源を立ち上げると、機器が正常に起動しないという。うるう年の処理に問題があり、誤作動を起こしているとみられる。
当面の対応として、使用可能なユーザーは主電源を切らないよう呼びかけている。
シャープのブルーレイディスクレコーダー・ハイビジョンレコーダーの一部機種において、うるう年に関連するバグが見つかった。2012 年(平成 24 年)2 月 29 日に予約確認を行うと、予約ができない事を意味する「×」が表示されるもの。

2012 年(平成 24 年)、米Microsoft のクラウドサービス Windows Azure が、うるう年に関わるバグにより、すべてのデータセンタで管理ができなくなる状態に陥った。太平洋時間の 2 月 29 日午前 2 時 57 分にはほとんどの地域で復旧したという。
米Microsoft は障害の原因について説明し、返金対応すると発表した。

2012 年(平成 24 年)、米Microsoft のクラウドサービス Windows Azure が、うるう年に関わるバグにより、すべてのデータセンタで管理ができなくなる状態に陥った。太平洋時間の 2 月 29 日午前 2 時 57 分にはほとんどの地域で復旧したという。
米Microsoft は障害の原因について説明し、返金対応すると発表した。
うるう年と皇紀
うるう秒とシステム障害
うるう年とは別に、秒単位の時間修正を行うために、不定期にうるう秒が挿入されたり削除されたりする。

2012 年(平成 24 年)7 月 1 日のうるう秒挿入では、Linux や Java プラットフォームが1秒挿入に対応していなかったため、複数のサイトが影響を受けた。
ニュース収集議論サイト「Reddit」は、Java で構築されたオープンソースのデータベース「Java/Cassandra」に問題が発生した。
Mozilla は、Java で構築されたオープンソースプラットフォーム「Hadoop」に問題が発生した。Reddit は、Java で構築されたオープンソースデータベース「Apache Cassandra」に問題が発生した。
「foursquare」、「Yelp」、「LinkedIn」、「Gawker」、「StumbleUpon」も、うるう秒バグで障害が生じたという。

また、mixi でも 7 月 1 日午前 9 時から約 4 時間にわたりシステム障害が発生し、利用できなくなった。うるう秒が何らかの影響を与えたとみられているが、原因究明までには至っていない。

2012 年(平成 24 年)7 月 1 日のうるう秒挿入では、Linux や Java プラットフォームが1秒挿入に対応していなかったため、複数のサイトが影響を受けた。
ニュース収集議論サイト「Reddit」は、Java で構築されたオープンソースのデータベース「Java/Cassandra」に問題が発生した。
Mozilla は、Java で構築されたオープンソースプラットフォーム「Hadoop」に問題が発生した。Reddit は、Java で構築されたオープンソースデータベース「Apache Cassandra」に問題が発生した。
「foursquare」、「Yelp」、「LinkedIn」、「Gawker」、「StumbleUpon」も、うるう秒バグで障害が生じたという。

また、mixi でも 7 月 1 日午前 9 時から約 4 時間にわたりシステム障害が発生し、利用できなくなった。うるう秒が何らかの影響を与えたとみられているが、原因究明までには至っていない。
参考書籍
![]() |
暦の雑学事典 | ||
著者 | 吉岡安之 | ||
出版社 | 日本実業出版社 | ||
サイズ | 単行本 | ||
発売日 | 1999年12月 | ||
価格 | 1,430円(税込) | ||
ISBN | 9784534030214 | ||
知っているとちょっと楽しい知識を満載!ミレニアムの意外な秘密がわかる。暦の歴史をたどり、ルーツを探る。いまに生きる旧暦の数々がわかる。さまざまな時計の歴史と科学を紹介。身近な暦の話題から歳時記まで暦の蘊蓄が盛りだくさん。 | |||
![]() |
空と月と暦 | ||
著者 | 米山忠興 | ||
出版社 | 丸善出版 | ||
サイズ | 単行本 | ||
発売日 | 2006年01月 | ||
価格 | 1,980円(税込) | ||
ISBN | 9784621077009 | ||
日ごと、星はめぐり、月は満ち欠けをくり返します。天文学は、空を眺めてその変化を季節の移り変わりと結びつけることから始まり、私たちの生活と密接にかかわりあいながら発展してきました。本書では、天文学のむずかしい話は横に置き、その周辺の身近な話題を取り上げ、やさしくていねいに解説します。星座たちは日ごと月ごとどのように変化していくのか、月がどれほどわれわれの生活とかかわってきたか、暦はどのように成り立って、時や季節を表してきたのか、…などなど、わかりやすく楽しい話題が満載です。 | |||
参考サイト
- 国際原子時と協定世界時:ぱふぅ家のホームページ
- 公衆電話機の一部がご利用できない事象について(復旧):NTT 東日本
- 西暦 1582 年(天正 10 年) - グレゴリオ暦導入:ぱふぅ家のホームページ
- PHP で閏年かどうか判定する:ぱふぅ家のホームページ
- 国際原子時と協定世界時:ぱふぅ家のホームページ
- 改暦ノ布告
- 閏年ニ関スル件
- うるう年をめぐる法令:参議院法制局
(この項おわり)
だが、これは間違っている。アテネ大会のあった 2004 年(平成 16 年)2 月 29 日は日曜日、シドニー大会があった 2000 年(平成 12 年)2 月 29 日は火曜日、アトランタ大会のあった 1996 年(平成 8 年)2 月 29 日は木曜日‥‥しかし、オリンピック第2 回大会、パリ大会が開かれた 1900 年(明治 33 年)の 2 月 28 日水曜日の翌日は 3 月 1 日木曜日だった。