![]() |
Float nachkommastellen abschneiden???
Hi ihr lieben....
Hab ne harte Nuss hier: Und zwar hab ich n String den ich zum Float-Wert mache....aber ich benötige nur 2 Kommastellen, denn wenn ich z.b. '56.87' (oder ähnlich habe), dann macht Delphi daraus den Wert 56.87000000000017 (Delphi 5). Mit diesem Wert kann ich aber nicht so viel anfangen, da ich ihn in die Datenbank schreiben möchtt und später noch damit weiter rechnen will. Habs schon so versucht:
Delphi-Quellcode:
und dann wieder durch 100 dividiert, aber auch bei der Division macht Delphi wieder diesen komischen Wert daraus.
trunc((56,78)*100)
Wer kann mir helfen??? Brauch unbedingt den wert mit NUR zwei Kommastellen. :cry: Danke. Bye |
Re: Float nachkommastellen abschneiden???
Nimm die Format-Funktion
Delphi-Quellcode:
Result := Format('%8.2n', [DeinWert]);
|
Re: Float nachkommastellen abschneiden???
Eleganter wäre
![]() |
Re: Float nachkommastellen abschneiden???
oder so:
Delphi-Quellcode:
Evtl hilft auch [dp]kaufmännisch runden[/dp]
Zahl := round(Zahl *10) / 10;
Nachtrag: 2 Kommastellen natürlich * 100 und dann / 100 |
Re: Float nachkommastellen abschneiden???
moin,
nur um die Frage richtig zu verstehen: Du hast den String '45,78', wandelst ihn per strtofloat um und erhälst 45.78000000015 ?! Das wäre extrem komisch... :gruebel: |
Re: Float nachkommastellen abschneiden???
Zitat:
Stephan |
Re: Float nachkommastellen abschneiden???
Das liegt doch daran das hier eine Fließkommazahl abgespeichert wird - da bekommt per Definition nie den genauen Wert hin - da müßtest du schon eine Festkommazahl mit genügend stellen nehmen (z.B. Real) - sowas macht man aber eigentlich nicht mehr.
|
Re: Float nachkommastellen abschneiden???
bei mir nicht! :gruebel:
|
Re: Float nachkommastellen abschneiden???
schau dir mal den hier:
Zitat:
|
Re: Float nachkommastellen abschneiden???
hm,
aber ich verstehe nicht warum, wenn ich einen String in eine Kommazahl umwandle, dabei eine Abweichung auftritt/treten sollte?! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 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 by Thomas Breitkreuz