第十億誕生秒

作者:   發佈於:  

除了快到第三十歲生日之外,我也馬上要十億秒這麼老了。因為非常好奇那是哪會是一天,於是我掐指^H^H寫了個程式來算一下。

十億秒換算成天數的話,約是 11574.074 天,算成年的話,約是 31.7097 年。不過,根據每人出生年不同,這三十一餘年中的閏年數也會略有加減。因此不容易立刻算出日期。

用這段簡短的 Ruby Code 可以馬上算出來, 1980 年 1 月 1 日 0 時 0 分 0 秒誕生的人,其第十億誕生秒的日期落在 2011 年 9 月 9 日,只是後頭差一點零就會完全不同:

DateTime.parse("1980-01-01") + 10.0**9/86400

同樣目的之 Javascript expression 的數字們看起來不是小了些,就是大很多:

new Date((new Date(1980, 0, 1)).getTime() + 1000000000000)

Lisp,這些年來則仍然訓練人們快速計算右小括號數量的能力:

(current-time-string (time-add (encode-time 0 0 0 1 1 1980) (seconds-to-time 1000000000)))

Python, 都是小班制,很可愛

datetime.datetime(1980,1,1) + datetime.timedelta(seconds = 10**9)

最後是絕對不能少的 Perl:

DateTime->new(year => 1980, month => 1, day => 1)->add(seconds => 10**9)

特別來賓 HTML5:

<!-- XXX: Not implemented -->

(笑)