Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Problem mit Extended und 13 Nachkommastellen? (https://www.delphipraxis.net/147021-problem-mit-extended-und-13-nachkommastellen.html)

hitzi 31. Jan 2010 13:35


Problem mit Extended und 13 Nachkommastellen?
 
Hallo,

laut Hilfe müsste der Datentyp Extended doch bis zu 20 Stellen verarbeiten können. Wenn ich allerdings einer Extended Variabel zum Beispiel den Wert 46,3622360229492 zuweise, steht danach nur der Wert 46,362236023 in der Variabel. Woran liegt das? Gibt es eine Möglichkeit Zahlen mit dieser Genauigkeit zu benutzen?

Viele Grüße

himitsu 31. Jan 2010 13:43

Re: Problem mit Extended und 13 Nachkommastellen?
 
Sicher, daß da nicht mehr drinstehn?

Wo hast'e dir diesen Wert den anzeigen lassen?

hitzi 31. Jan 2010 13:46

Re: Problem mit Extended und 13 Nachkommastellen?
 
Weiß nicht, wie das Dingens richtig heißt, deshalb erklär ich's mal.
Ich hab einen Breakpoint nach der Zuweisung gesetzt und bin dann mit der Maus über die Variable gegangen. Dann kann man sich ja den Inhalt der Variable anzeigen lassen.

mkinzler 31. Jan 2010 13:48

Re: Problem mit Extended und 13 Nachkommastellen?
 
Möglichweise wird im Debugger kein Extended verwendet. Lass die mal den Wert im Programm anzeigen.
Extended sollte eine 19 stellige Genauigkeit aufweisen

himitsu 31. Jan 2010 13:50

Re: Problem mit Extended und 13 Nachkommastellen?
 
Jupp, der Debugger zeigt nur als Double an.

Delphi-Quellcode:
var
  X: Extended;
begin
  X := 46.3622360229492;
  Edit1.Text := Format('%.18n', [X]);

hitzi 31. Jan 2010 14:08

Re: Problem mit Extended und 13 Nachkommastellen?
 
Oha ... da kann ich ja lange Suchen ;) Danke für den Hinweis.

himitsu 31. Jan 2010 15:43

Re: Problem mit Extended und 13 Nachkommastellen?
 
Schon gehört?
Mit der nächsten Delphi-Compilerversion soll Extended verschwinden ... Was machen wir dann, wenn uns Double zu klein ist?

mkinzler 31. Jan 2010 15:46

Re: Problem mit Extended und 13 Nachkommastellen?
 
Ich nehme an dass dann Double auch "breiter" sein wird

himitsu 31. Jan 2010 16:04

Re: Problem mit Extended und 13 Nachkommastellen?
 
Nee, ich glaub die FPU hat sich in den 64-Bit-CPUs nicht verändert, also müßte das dann doch gleich bleiben? :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:10 Uhr.

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