なんかログインしたらたまたまプログラマーの日って書いてあってこれはなんか記事を書かなきゃなんて思った次第です。
んで、何の日なのよって調べてみました。
Wikiより引用
プログラマーの日(ロシア語:День программиста、英語:Programmers' Day)は、ロシアの公式な祝日である。コンピュータのデータを扱う単位である8ビットに256通りの表現があることから、1月1日から256日目にあたる9月13日(閏年の場合は9月12日)に定められた[1]。2009年7月24日にロシア情報技術・通信省により認められた。 二ゴロとも読む
引用ここまで
由来が面白いですが、これ閏年はどうするんだろ・・・?
というわけで閏年かどうか判定するロジックをなんとなく組んでみます。(強引)
言語は多分VB。
Function isLeapYear(seireki as long) as boolean
if seireki mod 400 = 0 then
return True
end if
if seireki mod 100 =0 then
return False
end if
if seireki mod 4 = 0 then
return True
end if
return False
end Function
とか
Function isLeapYear(seireki as long) as boolean
if seireki mod 4 = 0 then
if seireki mod 100 = 0 then
if seireki mod 400 = 0 then
return True
else
return False
end if
else
return True
end if
end if
end Function
とかかなぁ?動作確認とか一切してないのであれですが、下の方が処理は早そうな感じ。
んで、これの元になった閏年の根拠はWikiから。
- 西暦年が4で割り切れる年は閏年。
- ただし、西暦年が100で割り切れる年は平年。
- ただし、西暦年が400で割り切れる年は閏年。
ここまで引用。
4年に一回は大体って話でたまーにその法則に当てはまらない時もあるんですねぇ。
直近だと2000年が100で割り切れるけど400でも割り切れるから閏年という400年に一回の奇跡的な年だったんですねぇ。