Veröffentlicht 7. Januar 201114 j Hallo liebe Forumler Das ist mein erster Beitrag und gleich ein Problem: Ich habe folgendes Programm geschrieben: #include "std_lib_facilities.h" #include "conio.h" int main() { cout << "Geben Sie einen Gleitkommawert ein: "; double n; cin >> n; cout << "n == " << n << "\nn+1 == " << n+1 << "\ndreimal n == " << 3*n << "\nzweimal n == " << n+n << "\nn zum Quadrat == " << n*n << "\nHaelfte von n == " << n/2 << "\nWurzel von n == " << sqrt(n) << endl; getch(); return 0; } Hier wird ja eine double Variable also eine Gleitkommazahl mit mehreren Operationen getestet. Doch leider wird die Gleitkommazahl nachdem sie z.b. dreimal genommen wird als integer Wert ausgeben,also nicht als Dezimalzahl so wie es sein soll (jedoch ist das nicht so bei dem Wurzel ziehen) Wie erreicht man eine Ausgabe als Dezimalwert? Vielen Dank schonmal im Vorraus.
7. Januar 201114 j Wenn die double 12.2 ist und sie wird verdreifacht sollte ja die Ausgabe 36.6 sein aber die Ausgabe ,die ich erhalte, ist 36. Übrignes: Ich programmiere mit Windows Visual 2010 Win32 Konsolenanwendungen (falls das relevant ist).
7. Januar 201114 j Um die Dezimalstellen richtig auszugeben kann man folgendes verwenden: precision - C++ Reference oder printf - C++ Reference
7. Januar 201114 j Wenn die double 12.2 ist und sie wird verdreifacht sollte ja die Ausgabe 36.6 sein aber die Ausgabe ,die ich erhalte, ist 36.Kann ich nicht reproduzieren. Allerdings habe ich den Header <std_lib_facilities.h> nicht, vielleicht macht der irgendeinen Quatsch. Ich programmiere mit Windows Visual 2010 Win32 Konsolenanwendungen (falls das relevant ist).Ich auch. Versuch's bitte mal damit: #include <iostream> #include <conio.h> int main() { using namespace std; cout << "Geben Sie einen Gleitkommawert ein: "; double n; cin >> n; cout << "n == " << n << "\nn+1 == " << n+1 << "\ndreimal n == " << 3*n << "\nzweimal n == " << n+n << "\nn zum Quadrat == " << n*n << "\nHaelfte von n == " << n/2 << "\nWurzel von n == " << sqrt(n) << endl; getch(); return 0; }[/code]
7. Januar 201114 j Okay Danke an euch beide. Die headerdatei wird von einem Buch mit dem ich C++ lerne bereitgestellt. Das Programm ist als Beispielprogramm angegeben. Aber na gut. Ich werde jetzt den iostream benutzen . Danke
7. Januar 201114 j Hallo, multipliziere die Zahl mal mit 3.0 und nicht mit 3 . Es sieht danach aus, dass die Zahl nach der Multiplikation auf Integer gecastet wird, wenn nicht beide Operatoren double-Werte sind. Gruß Jogibaer0411
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.