![]() |
Re: Nur die Zahl hinter dem Komma auswählen
also ich will eine division mit einem ergebniss mit komma
in dem fall muss ich ja / einsetzen dann würde das ja dann so aussehen
Delphi-Quellcode:
jedoch tritt dann dieser Fehler auf
procedure TForm3.Button1Click(Sender: TObject);
var a,b,c : Integer; begin a:=StrtoInt (edit1.text); b:=a / 60 / 60; c:=b-Trunc(b); Label1.caption:= FloattoStr (c); end; b:=a / 60 / 60; [Fehler] Unit3.pas(32): E2010 Inkompatible Typen: 'Integer' und 'Double' |
Re: Nur die Zahl hinter dem Komma auswählen
Wenn man Division mit Integern (= Ganzzahlen) macht, ist dafür div gedacht, da Integer eben ganze Zahlen sind und nichts nach den Komma darstellen können.
Für "normale" Divisionen sind Gleitkommazahlen da (schau mal in der Delphi-Hilfe unter "Reelle Typen"). b müsste halt eine Gleitkommazahl sein! |
Re: Nur die Zahl hinter dem Komma auswählen
Klar:
Delphi-Quellcode:
Änder das mal ab:
var a,b,c : Integer;
Delphi-Quellcode:
[EDIT]Quatsch! So wäre es ausreichend:
var a,b,c : Double;
Delphi-Quellcode:
[/EDIT]
var a, b: integer;
c: Double; |
Re: Nur die Zahl hinter dem Komma auswählen
und was macht Double?
|
Re: Nur die Zahl hinter dem Komma auswählen
Double "macht" nichts, es ist ein Fließkommatyp.
|
Re: Nur die Zahl hinter dem Komma auswählen
:?: Fließkommatyp :?:
|
Re: Nur die Zahl hinter dem Komma auswählen
Wie gesagt, schau mal unter reelle Typen.
Typen, die Gleitkommazahlen darstellen können, sind z.B.: - Single - Double - Real - Extended Single ist etwas ungenau bei vielen Nachkommastellen, Double ist da schon genauer. Extended ist vor allem für sehr große Zahlen geeignet. Real ist der wohl gebräuchlichste Typ, ist in seiner aktuellen Implementierung identisch mit Double. Mein Tipp: verwende Real! Fließkommatyp = Typen für Gleitkommazahlen, also Zahlen, die auch was nach dem Komma darstellen können! |
Re: Nur die Zahl hinter dem Komma auswählen
Ich kenne die Hilfe von Delphi 2005 nicht, aber unter dem Suchbegriff "elementare Datentypen" sollte sich eine ausführliche Beschreibung finden lassen.
|
Re: Nur die Zahl hinter dem Komma auswählen
Delphi-Hilfe Reelle Typen Ein reeller Typ definiert eine Menge von Zahlen, die in Gleitkommanotation dargestellt werden können. Die folgende Tabelle enthält die Bereiche und Speicherformate der fundamentalen reellen Typen in Win32. Fundamentale reelle Typen in Win32:
Code:
Der generische Typ Real entspricht in seiner aktuellen Implementierung dem Typ Double.
Typ Bereich Signifikante Größe
Stellen in Byte Real48 -2,9 x 10^39 .. 1,7 x 10^38 11-12 6 Single -1,5 x 10^45 .. 3,4 x 10^38 7-8 4 Double -5,0 x 10^324 .. 1,7 x 10^308 15-16 8 Extended -3,6 x 10^4951 .. 1,1 x 10^4932 10-20 10 Comp -2^63+1 .. 2^63 1 10-20 8 Currency -922337203685477.5808 .. 10-20 8 922337203685477.5807 |
Re: Nur die Zahl hinter dem Komma auswählen
du solltest dir mal die standarttypen genauer anschauen :zwinker:
In einen Integer passen nur ganze Zahlen rein: zB 5 oder 87 oder auch -44 In einen reelen Typ (zB Double, Extended etc) passen auch kommazahlen rein: zB 4,36 oder 45,98 oder -445,144 Der Operator div gibt eine ganze Zahl aus, zB 9 div 2 = 4 Der Operator / gibt eine Kommazahl aus, zB 9 / 2 = 4,5 Da Integer und 4,5 nicht zueinander passen kommt dieser Fehler. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:49 Uhr. |
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