Net-srac Geschrieben 1. Februar 2002 Geschrieben 1. Februar 2002 Hi, ich hab hier grad irgendwie Tomaten auf den Augen. Ich find in der MSDN absolut nicht, wie man einen Float oder Double auf 2 nachkommastellen runden kann. Thnx4Help Zitieren
Klotzkopp Geschrieben 1. Februar 2002 Geschrieben 1. Februar 2002 Kann man auch nicht. Aber das geht: double = floor( double * 100.0 + .5 ) / 100.0; Zitieren
goepp Geschrieben 1. Februar 2002 Geschrieben 1. Februar 2002 hallo! wenns nur um die ausgabe geht: ... #include <iomanip.h> ... int main() { cout.setf(ios::fixed); cout<<setprecision(2); ... } ... setprecision legt die anzahl der nachkommastellen fest. es wird jedoch nur bei der ausgabe (cout) auf zwei stellen nach dem komma gerundet. Zitieren
Jester Geschrieben 4. Februar 2002 Geschrieben 4. Februar 2002 Hi Leute, geht der Befehl auch in Delphi? Zitieren
Uruz Geschrieben 5. Februar 2002 Geschrieben 5. Februar 2002 Original geschrieben von Jester Hi Leute, geht der Befehl auch in Delphi? neee... dafuer kannst du aber ohne weiteres die Funktion Format verwenden... z.B. var S : string; x : double; begin x := 13,813469123; s := Format(%f.3,[x]); end; dann hast du 3 Nachkommastellen... wenn du .3 weglaesst wird standardmaessig mit 2 Stellen gearbeitet... kannst aber eine beliebige Genauigkeit so festlegen Uruz Zitieren
paule22 Geschrieben 8. Februar 2002 Geschrieben 8. Februar 2002 geht bestimmt auch so: char puffer[100]; double double_wert = 1.42565; sprintf(puffer,"%.02f",double_wert); double rounded_wert = atof(puffer); ---------- Have fun ... Zitieren
gajUli Geschrieben 8. Februar 2002 Geschrieben 8. Februar 2002 Standardfrage aus der ANSI-C-FAQ. Standardantwort ist die von Klotzkopp. Alles andere (sorry) gilt unter serioesen Programmierern eher als albern. Uli Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.