Re: Programming a calendar system
From: | Mark J. Reed <markjreed@...> |
Date: | Wednesday, April 28, 2004, 20:57 |
Whups, got cut off.
You decided to make the starting point August 26, 986 (or -986).
The next question is: what time of day on our calendar corresponds
to the start of the Arégan day? I think midnight would be asking too
much of coincidence.
Also, you need to decide whether that's August 26, [-]986 in the Julian
calendar (which is what historians usually use for such dates) or
Gregorian. In the year -986 (which under the usual convention is -986
AD = 987 BC, because 1 BC was the year before 1 AD, with no year in between;
so 0 AD = 1 BC, -1 AD = 2 BC etc), neither calendar had yet been
invented; in the year 986 the Julian was in place but the Gregorian had
yet to come into being.
So here are your options:
Julian Gregorian time_t at midnight UTC
August 26, 987 BC August 17, 987 BC -93,262,665,600
September 4, 987 BC August 26, 987 BC -93,261,888,000
August 26, 986 AD August 31, 986 AD -31,031,078,400
August 21, 986 AD August 26, 986 AD -31,031,510,400
Those time_t values are bigger than most fixed-width integer data types
can hold, though. It probably makes more sense to deal in whole days
(divide the times by the number of seconds in a day = 86,400) to
determine the date and then treat the time of day separately.
-Mark
Reply