= -4712 zarówno dla kalendarza juliańskiego jak i gregoriańskiego począwszy od 1582 do końca cyklu. double calendar_to_JD(int Y, int M, double D, bool bJulian) { int A = 4716 + Y + floor((M + 9) / 12); double B = 1729279.5 + 367 * Y + floor((275 * M) / 9) - floor((7 * A) / 4) + D; if (bJulian) return B; int C = floor((A + 83) / 100); int E = floor((3 * (C + 1)) / 4); return B + 38 - E; }

void JD_to_Calendar(double JD, int &Y, int &M, double &D, bool bJulian) { double W = JD + 0.5; int X = floor(W); double U = W - X; int Z; int C = 0; if (bJulian) Z = X; else { C = floor((X + 32044.5) / 36524.25); Z = X + C - C / 4 - 38;

int A = Z + 1524; int B = floor((A - 122.1) / 365.25); int Q = A - floor(365.25 * B); int E = floor(Q / 30.61); int F = E / 14; Y = B - 4716 + F; M = E - 1 - 12 * F; if (C % 4 == 2 && Z - C * 36525 == 4442) { M++; D = 1; } else D = Q + U - (153 * E) / 5; }

Zobacz też Era Scaligera

Linki zewnętrzne Kalkulator daty juliańskiej i kalendarzowej Dni juliańskie i daty kalendarzowe

Kategoria:Kalendarze Kategoria:Mechanika nieba