计算一个人在他Nth生日那天活着的天数? (闰年挑战)

时间:2009-09-05 01:01:56

标签: algorithm

  

可能重复:
  How can I calculate the age of a person in year, month, days?

如何计算这个人在他Nth生日那天还活着的天数?鉴于他的出生月份,日期,年份和他的年龄?如何解决闰年挑战?

1 个答案:

答案 0 :(得分:1)

这是Perl中的一种(一种)单行:

$ perl -MPOSIX -e '($d, $m, $y, $a) = @ARGV; print ((mktime(0,0,0,$d,$m+1,$y+$a-1900) - mktime(0,0,0,$d,$m+1,$y-1900)) / 86400)' 23 4 1975 29
10593

当然,这会将关键的闰年计算转移到POSIX::mktime函数。