我試圖找出一種方法來計算給定年月至兩位小數的記錄的出生年份 - 在Perl中。從日期計算年的三角洲
爲了說明這個例子,考慮這兩個記錄:
date, age at date
25 Nov 2005, 74.23
21 Jan 2007, 75.38
我想要做的就是根據這些記錄的出生年份 - 它應該是,從理論上講,是一致的。問題是,當我試圖通過計算日期字段中的年份與年齡之間的差異來計算它時,我遇到了四捨五入的錯誤,導致結果看起來錯誤,而實際上卻是錯誤的。
我曾嘗試使用int()或sprintf()的某些「巧妙」組合來圓角,但無濟於事。我看過Date :: Calc,但看不到我可以使用的東西。
p.s.由於許多日期都是1970年以前的日子,所以我不能不幸地使用UNIX時代。
多少天每百個代表什麼? (有幾個答案是可能的。) – ysth 2010-06-16 18:20:48
1970年以前不是問題:Unix時間()是一個有符號整數。 但是,有一個更好的理由不使用它:閏年,閏秒... – dolmen 2010-06-17 15:38:06