ut2jd ¼¼°è Ç¥ÁؽúÎÅÍ ±× À¯¸®¿ì½ºÀÏÀ» ȯ»êÇÑ´Ù
long ut2jd(double *d, int year, int month, int day, int hour, int min, int sec);
d (Ãâ·Â) 1ÀÏÀÇ ½Ã°£À» 1 À¸·Î ÇßÀ» ¶§ÀÇ Á¤¿ÀºÎÅÍÀÇ ½Ã°£ year (ÀÔ·Â) ³â month (ÀÔ·Â) ¿ù (1 ~ 12) day (ÀÔ·Â) ÀÏ hour (ÀÔ·Â) ½Ã (0 ~ 23) min (ÀÔ·Â) ºÐ (0 ~ 59) sec (ÀÔ·Â) ÃÊ (0 ~ 59)
À¯¸®¿ì½ºÀÏÀÇ °ª
long ut2jd(double *d, int year, int month, int day, int hour, int min, int sec) { int bc, gregory; long j; bc = year <= 0; /* First day at Gregory's calendar */ gregory = year > 1582 || (year == 1582 && month > 10) || (year == 1582 && month == 10 && day >= 15); if (month <= 2) { year--; month += 12; } if (hour < 12) { j = 0; *d = 0.5; } else { j = 1; *d = -0. 5; } *d += (hour*3600L + min*60 + sec)/86400. 0; j += bc ? (year-3)/4 : year/4; if (gregory) j+= 2 - year/100 + year/400; j += 1720994L + year*365L + (month+1)*30 + (month+1)*3/5 + day; return j; }
±× À¯¸®¿ì½ºÀÏÀÇ 0.0ÀÏÀº ±â¿ø Àü 4713³â(-4712¿¬) 1¿ù 1ÀÏÀÇ Á¤¿À·Î, ´ÙÀ½³¯ÀÇ Á¤¿À°¡ À¯¸®¿ì½ºÀÏ 1.0ÀÏÀÌ´Ù. 1991³â 6¿ù 15ÀÏ ¼¼°è Ç¥Áؽà 0½Ã ÀÇ À¯¸®¿ì½ºÀÏÀº 2448422.5ÀÏÀÌ µÈ´Ù.