Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
26. Jun 2017
Siehe Post #2.
Das Stichwort heißt "signifikante Dezimalstellen"
Eine Fließkommazahl besteht aus dem Vorzeichen (+ oder -), der Mantisse und dem Exponent.
Die Mantisse ist der Teil, in welchem die 18-20 "signifikanten" Dezimalstellen stecken und mit dem Exponent kann man ihn hin und her schieben, also bei Extended um fast 5000 Dezimalstellen vor oder hinter das Komma. (bei Double etwa 300...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
25. Jun 2017
Ich kann dir die Lösung sogar aus dem Kopf nennen, wenn ich alle "ungültigen" Dezimalstellen wegrunde.
1.23e150 fmod 2e20 = 0
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
25. Jun 2017
Extended war nie für den produktiven Einsatz gedacht, sondern nur zur FPU-internen Verwendung.
Ab Windows 64 Bit gibt es diesen Typ auch nicht mehr "nativ" im Delphi.
Und Extended hat auch nur 19-20 "signifikante" Dezimalstellen ... mehr ist einfach nicht möglich und alles außerhalb dieser Stellen ist "undefiniert".
12345678901234567890xxxxxxxxxxxxxxxxxx,xxxxxxxx...