Es könnte natürlich auch sein, daß bei Dir die Rundungsart des Prozessors verstellt/falsch eingestellt ist. Bitte folgenden Code mal testen:
Delphi-Quellcode:
VAR
MyRoundingMode : TRoundingMode;
MyRoundingModeStr: String;
...
MyRoundingMode:= GetRoundMode;
Case MyRoundingMode Of
rmNearest: MyRoundingModeStr:= 'rmNearest';
rmUp: MyRoundingModeStr:= 'rmUp';
rmDown: MyRoundingModeStr:= 'rmDown';
rmTruncate: MyRoundingModeStr:= 'rmTruncate';
End;
WriteLn('MyRoundingMode = ', MyRoundingModeStr);
Es sollte
rmNearest rauskommen! Das sollte eigentlich die Standard-Einstellung sein.
Falls nicht, kanns Du
SetRoundMode(rmNearest);
verwenden.