Forum: Object-Pascal / Delphi-Language
by Andreas13,
15. Mär 2024
Sorry Peter,
aber das verstehe ich nicht ganz. :oops:
Könntest Du das bitte etwas verdeutlichen?
Forum: Object-Pascal / Delphi-Language
by Andreas13,
15. Mär 2024
Tja, das sind die Tücken der Realzahl-Arithmetik (floating point operations)… :( Hier wird immer gerundet, von ganz-ganz-ganz-ganz seltenen Ausnahmen abgesehen. Das kommt vom Grundproblem der binären Darstellung von reellen Zahlen mit einer endlichen Anzahl von Bits:
Denn selbst zwischen zwei beliebig dicht beieinander liegenden reellen Zahlen existieren immer unendlich viele weitere reelle...
Forum: Object-Pascal / Delphi-Language
by Andreas13,
15. Mär 2024
Hallo Peter,
es kommt bereits in der ersten Zeile des ersten Codes Result := Result * Faktor; bei der Multiplikation zu einer Rundung. Wenn der Rundungsmodus zuvor ein anderer war als der von Dir gewünschte, dann wurde nach diesem gerundet.
PS:
Mit GetRoundMode http://docwiki.embarcadero.com/Libraries/Seattle/en/System.Math.GetRoundMode kannst Du den alten (= "falschen") Rundungsmodus...