今さから気づいたこと。

2012.03.31
今さから気づいたこと。
普段使っているコンパクトデジタルカメラ、「Canon PowerShot A495」ですが、日付の計算がおかしいことに気づきました。
どうやら、閏年の計算をしていないようです。カメラの時計が4月1日なのです。
プログラミングをしている自分としては、日付の処理で、閏年を処理していないなんて「嘘だろう」と思うところです。この流れで予想されるのは、UNIXタイムの桁あふれが起こる、2038年1月19日3時14分7秒が、危険な気がしてなりません。(32Bitの場合)

このカメラあまり、長期の利用にむいていなさそう。
閏年は、以下の条件になります。4出割り切れるってだけ、話になることがありますが、本来は、3つの条件がありますので、注意ですね。

4で割り切れる年はうるう年
ただし、100で割り切れる年は平年
ただし、400で割り切れる年はうるう年

※ グレゴリオ暦で検索するといろいろ出てきます。

ここ数年で発売された製品でも、閏年の問題があるんですね。
驚きです。

Perlのソースだとこんな感じです。間違えてたらごめん。
my $Y = 2000;
my $day = 28;
if(($Y%4 eq 0) and ($Y%100 ne 0) or ($Y%400 eq 0)){
$day = 29;
}

コメント投稿フォーム

 

フィギュア

最近

カテゴリ

カプセルトイ

初音ミク

アーカイブ

RSS Feed RSS Feed Atom Feed TopicXML アイコン
WebBoard

PICUP