-1

给定任意秒数,我怎样才能得到年数、月数、天数、小时数和分钟数?

该算法应该首先计算最大年数,然后计算月数等等......

什么是有效的方法来做到这一点?

4

1 回答 1

4

它主要归结为简单的划分。你可能知道...

  • 一分钟有60秒:
    number_of_minutes := floor(number_of_seconds / 60)

  • 一小时有 60 分钟:
    number_of_hours := floor(number_of_minutes / 60)
    number_of_hours := floor(number_of_seconds / (60 * 60))

  • 一天有 24 小时(至少通常......见下文。)

  • 一个月有 28 到 31 天。

  • 一年有 365 或 366 天,或平均365.2425 天

我提到的最后两个可能需要您更多地考虑所述问题。您可以定义一个“平均”月份,然后您可以说“ x秒等于y平均月份”;或者您根本不会将秒数转换为月数。

(想想看,如果你和天文学家或类似的人交谈,他们可能会告诉你一天并不总是正好是 24 小时,因为偶尔会有闰秒。)

于 2011-07-10T15:35:49.720 回答