Obliczanie dni Juliańskich
z daty kalendarza Gregoriańskiego
algorytm + kod źródłowy




Laboratorium Cybermoon Laboratorium Cybermoon - Użyj tego programu do obliczania dni juliańskich z daty kalendarza gregoriańskiego.



Przeliczanie dni juliańskich na datę kalendarza gregoriańskiego
Obliczenia na odległych datach z wykorzystaniem systemu JD

Dni juliańskie, jest to liczbowy zapis daty, taka rachuba czasu ze względu na wygodę przy dokładnym obliczaniu odstępów dzielących różne daty została przyjęta i jest obecnie stosowana w astronomii. Dni juliańskie zapisuje się w postaci liczby całkowitej (numer kolejnego dnia) i części ułamkowej będącej ułamkiem doby. Istnieje obecnie wiele różnych rodzajów kalendarzy, i najprostszym sposobem na ich przeliczanie lub porównywanie między sobą jest zamiana ich na dni juliańskie (datę juliańską). Początkiem daty juliańskiej (czyli liczba 0) jest 01 stycznia 4713 r. p.n.e. Nowy dzień juliański zaczyna się w południe (godzina 12:00). Dla daty juliańskiej stosujemy oznaczenie JD. W tym artykule zajmiemy się wyznaczaniem dni juliańskich z daty kalendarza gregoriańskiego. Kalendarz gregoriański stosowany jest prawie na całym świecie (oczywiście także w Polsce), jego początkiem jest data 15.10.1582 , przed tą datą posługiwano się kalendarzem juliańskim. Oczywiście data juliańska (dni juliańskie) nie ma nic wspólnego z kalendarzem juliańskim.


Dla przykładu przeliczona data:

Data kalendarza gregoriańskiego: 26.10.2005 22:52:06
Data juliańska: JD 2453670.4528556713


Poniżej przedstawiam prosty algorytm do obliczania dni juliańskich z daty kalendarza gregoriańskiego. Algorytm oblicza datę juliańską tylko z pełnych dni (nie oblicza ułamka doby), dlatego w wyniku będzie liczba całkowita i część ułamkowa równa 0,5. Ułamek 0,5 bierze się stąd, gdyż dzień juliański kończy się i zaczyna w południe, czyli w środku doby kalendarza gregoriańskiego.



Algorytm zamiany kalendarza gregoriańskiego na dni juliańskie:





R : Rok
M : Miesiąc
D : Dzień
JD : Dni juliańskie


X = ( M + 9 ) / 12
A = 4716 + R + Int( X )
Y = 275 * M / 9
V = 7 * A / 4
B = 1729279,5 + 367 * R + Int( Y ) - Int( V ) + D
Q = ( A + 83 ) / 100
C = Int( Q )
W = 3 * ( C + 1 ) / 4
E = Int( W )
JD = B + 38 - E

Int( x ) - Odcina część ułamkową z liczby x np. int( 4,87 ) = 4





Oczywiście liczenie ręczne może pochłaniać dużo czasu, więc najlepiej jest przekształcić ten algorytm na jeden z języków programowania, i stworzyć program obliczający wszystko za nas. Można także posłużyć się programem MS Excel, w którym odpowiednio zadeklarowane formułki mogą szybko wykonywać za nas obliczenia. Klikając tutaj możesz ściągnąć kody źródłowe tego algorytmu w językach Pascal/Delphi, C++, V-Basic, Excel, VB Excel.


Dni Juliańskie - kalkulator zamiany daty kalendarza gregoriańskiego na dni juliańskie.

Algorytm działa dla dat powyżej 15.10.1582, gdyż w tym dniu wprowadzono kalendarz gregoriański.
A oto przykładowe dane do przetestowania Algorytmu:



Data Dni juliańskie
01.01.2004 2453005,5
01.01.1600 2305447,5
15.07.3456 2983533,5
08.02.30000 12678372,5




Zapraszam do strony głównej z algorytmami:

Proste algorytmy astronomiczne - Cybermoon



Pamiętaj, że Autor opracowując tę stronę trochę się napocił (szukając i pisząc odpowiednie programy i algorytmy), jeżeli choć trochę skorzystałeś z tych informacji w ramach zapłaty dopisz się do Księgi Gości.