Для вычесления Юлианской даты есть формула.
JD=INT*(365.25*(Year1 + 4716)) + INT*(30.6001*(Month1 + 1)) + Day1 - 1524.5 а также некоторое условие .Если month=1 или Month=2 тогда следует принять Year=Year-1 Month=Month+12.
Учитывая ваши высказывания написал теперь процедуру
Код:
Procedure JDday(Year1, Month1:integer; Day1:real);
begin
if (month1=1) or ( Month1=2) then begin
Year1:=Year1-1;
Month1:=Month1+12;
JDday:=INT*(365.25*(Year1 + 4716)) + INT*(30.6001*(Month1 + 1)) + Day1 - 1524.5;
end;
Но при попытки скомпилировать и вывести в лейбл результат выдаёт ошибку [dcc32 Error] Unit1.pas(55): E2010 Incompatible types: 'Real' and 'procedure, untyped pointer or untyped parameter'.
В капчу вывожу через FloatToStr