@@ -2047,7 +2047,7 @@ var
a,b,c,d,e,m:integer;
day,month,year: word;
begin
- a := round(AValue + 32044);
+ a := trunc(AValue + 32044.5);
b := (4*a + 3) div 146097;
c := a - (146097*b div 4);
d := (4*c + 3) div 1461;
@@ -26,4 +26,28 @@ begin
writeln(date1:0:12);
halt(3);
end;
+
+ date1:=EncodeDateTime(2010,03,23,0,0,0,0);
+ date2:=JulianDateToDateTime(2455278.50000);
+ if date1<>date2 then
+ begin
+ writeln(date1:0:12);
+ writeln(date2:0:12);
+ halt(4);
+ end;
+ if DateTimeToJulianDate(date2)<>2455278.50000 then
+ writeln(DateTimeToJulianDate(date2):0:5);
+ writeln(2455278.50000:0:5);
+ halt(5);
+ jdate:=DateTimeToModifiedJulianDate(date1);
+ if ModifiedJulianDateToDateTime(jdate)<>date1 then
+ writeln(jdate:0:12);
+ halt(6);
end.