Rechenfehler

timestamp

Mitglied Käsekuchen
Hi

ich stehe hier vor einem für mich unverständlichem Problem:
Ich benutze Code::Blocks
C++:
std::cout << "Ergebnis: " << 4/(8*2+1) << "\n"; //Ergebnis: 0
//edit
double x = 4/17;
std::cout << "Ergebnis: " << (x) << "\n"; //Ergebnis: 0

Nach meiner Rechnung sollte dort etwa 0.235 herauskommen. Kann mir das jemand erklären?


edit:
Danke an fanta und adrian_broher aus dem Tutorials.de chat.
Die Lösung lautet wie folgt:
C++:
double x = 4.0/17.0;
 
Zuletzt bearbeitet:
Hallo,

es reicht schon, wenn mindestens einer der Operanden ein double-Wert ist. Das würde also auch funktionieren:
C++:
std::cout << "Ergebnis: " << 4.0/(8*2+1) << std::endl;
Gruß
MCoder
 
Zurück