Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Signifikante Stellen (https://www.delphipraxis.net/82224-signifikante-stellen.html)

Ruffy87 19. Dez 2006 22:38

Re: Signifikante Stellen
 
Meine Frage ist noch nicht richtig beantwortet.

Ich habe doch einfach mal einen Test gemacht:
Delphi-Quellcode:
var
  a: single;
begin
  a := 1.1111111111111;
  writeln (a);
  readln
end.
Als ich das Programm ausgeführt hatte, musste ich sehr staunen.
Die Ausgabe: 1.11111116409302

Nur 8 Stellen sind also genau.

Der Datentyp Single hat einen Bereich von
0.0000000000000000000000000000000000000000000015 bis 340000000000000000000000000000000000000 ( 1.5 x 10^45 .. 3.4 x 10^38 ),
signifikante Stellen sind 7-8.

Worin liegt jetzt überhaupt der Sinn zu sagen das ich einen riesigen Zahlenbereich habe, obwohl doch nur 7-8 Stellen genau angegeben werden können???
Man bräuchte ja eigentlich überhaupt nicht zu wissen wie der Bereich ist, da der gesamte Bereich sowieso nicht genau dargestellt werden kann.


Mal an alle in diesem Forum:
Bin ich eigentlich der Einzigste der sich diese Frage(n) stellt oder ist dieses Thema so logisch/einfach das alle Anderen die Antworten auf meine Fragen schon wissen?

jfheins 19. Dez 2006 23:03

Re: Signifikante Stellen
 
Das liegt an der internen Darstellung. Da die interne Darstellung im Binärformat allermeistens nicht exakt der Zahl entspricht, die du ihr im Dezimalformat zugewiesen hast, gibt es eine Ungenauigkeit. Je mehr Bits nun für die Darstellung genutzt werden, desto genauer ist die Darstellung, und desto mehr signifikante Stellen hat sie, und desto größer ist der Wertebereich, da mit mehr Bits auch mehr Zahlen dargestellt werden können.

Lesenswert: http://de.wikipedia.org/wiki/Gleitkommazahl ;)

Luckie 20. Dez 2006 00:48

Re: Signifikante Stellen
 
Und daraus resultiert dann: Prüfe Fließkommazahlen nie auf Gleichheit!

Ruffy87 20. Dez 2006 15:18

Re: Signifikante Stellen
 
Danke für die Links, jetzt leuchtet es mir ein. :dancer:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:52 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz