Einzelnen Beitrag anzeigen

Bodenseematze

Registriert seit: 10. Jul 2023
50 Beiträge
 
#10

AW: System.Frac / System.Int / Math.SimpleRoundTo - komische Ergebnisse

  Alt 11. Jul 2023, 16:13
Du könntest auch die Unit AMath.pas (= Accurate floating point math unit) von unserem einstigen Gammatester (Wolfgang Ehrhardt) verwenden.
Ich habe mir die jetzt mal angeschaut.

AMath.pas ersetzt komplett Delphi’s System.Math.pas und verbessert zahlreiche Fehler und Unzulänglichkeiten.
Das ist nicht so ganz richtig - es fehlen z.B. CompareValue, SimpleRoundTo und auch der "Typ" TRoundToRange - damit braucht man die System Math-Unit leider immer noch.

Außerdem kommt auch bei dieser beim Aufruf
Code:
AMath.Frac( 9.0 )
als Ergebnis
Code:
1.0
Wieso? Ich verstehe das nicht

Ich habe die Enterprise-Version von Delphi7 - da ist ja der Quellcode dabei, aber ich finde den Code von Frac() dort nicht...
(nur in der von SynopseRTL gepatchten Version - und dort steht "{$IFDEF NEWRTL}" drüber, was erst ab Delphi 2005 definiert ist...)
  Mit Zitat antworten Zitat