Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.166 Beiträge
 
Delphi 12 Athens
 
#24

AW: Programmergebnise verschieden auf zwei Rechnern

  Alt 10. Mär 2016, 15:04
Double kann zwar mit Zahlen von 324 Nachkommastellen bis 308 Vorkommastellen umgehen.

Aber Double hat nur 15-16 signifikante Stellen.
Es sind also immer nur die obersten 15 Dezimalstellen "korrekt" und alles danach ist quasi undefiniert und unterliegt Rundungsfehlern.
0.00000000000000000123456789012345xxxxxxx
123456.789012345xxxxxxx
123456789012345xxxxxxxxxxxxxxxxxx.xxxxxxx

Bei Extended sind es 19-20 signifikante Stellen und bei Single nur 7-8.
7-8 heißt : 12345678 geht, aber 87654321 nicht ... quasi wie 7,5 Dezimalstellen.


Und ein Range-Check knallt erst, wenn die Zahl größer als 10^308 wird ... für Rundungsfehler gibt es keine Prüfung.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (10. Mär 2016 um 15:11 Uhr)
  Mit Zitat antworten Zitat