HopelessFrag Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 Hallo zusammen, ich stehe gerade tierisch auf dem Schlauch. Und zwar möchte ich eine stinknormale Division von zwei Stinknormalen Zahlen durchführen und anschließend ausgeben. double i = 1/2; cout << i; Kann mir einer sagen warum mein Programm mir nur 0 statt 0.5 ausgibt? wenn ich 3/2 rechnen will, wird mir nur 1 ausgegeben. Kann mir jemand sagen woran das liegt?? auch wenn ich die zahlen manuell caste wird mir das gleiche ausgegeben. Ich benutze VS C++ 2008 Express als IDE. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lupo49 Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 Probier das mal: double i = 1/2; cout.precision(4); cout << i; Programmieren in C++: Einführung in ... - Google Buchsuche Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Bubble Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 Kann mir einer sagen warum mein Programm mir nur 0 statt 0.5 ausgibt? Weil 1 und 2 Integer-Zahlen sind und die Wandlung in ein double erst nach dem Berechnen des Ergebnisses stattfindet. Schreibe 1.0 / 2.0 (oder 1.0 / 2 oder auch 1 / 2.0) und der double Zahl wird 0.5 zugewiesen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HopelessFrag Geschrieben 25. Oktober 2008 Autor Teilen Geschrieben 25. Oktober 2008 danke für den tip, hat aber leider nichts gebracht. @bubble: das hab ich auch schon versucht, blieb aber ebenso erfolglos Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
ivanhoe Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 Ich habe noch nie, bei der Variablendeklaration, der Variable das Ergbnis einer Berechnung zugewiesen. Kann es vielleicht daran liegen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 @bubble: das hab ich auch schon versucht, blieb aber ebenso erfolglosDas kann nicht sein. Folgender Code gibt bei mir 0.5 aus: #include <iostream> int main() { double i = 1.0/2.0; std::cout << i; }[/code] Ich habe noch nie, bei der Variablendeklaration, der Variable das Ergbnis einer Berechnung zugewiesen. Kann es vielleicht daran liegen?Das ist eine ganz normale Initialisierung. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
ivanhoe Geschrieben 25. Oktober 2008 Teilen Geschrieben 25. Oktober 2008 Das ist eine ganz normale Initialisierung. Gut zu wissen , hab ich aber echt so noch nicht gesehen (was natürlich nichts zu heißen hat). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
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.