ausgabe einer double variablen Zahl mit cout auf 3 stellen kürzen`???
-
hallo zusammen
habe diese woche neu angefangen mit c++ und habe mir ein kleines prog geschrieben zur kalkulation von preisen
ich habe die app soweit fertig nur stört mich noch das die ausgaben immer 6 kommastellen ausgeben,soweit ich verstanden habe passiert das da als double variablentyp definiert oder?#include <iostream> using namespace std; using std::cout; using std::endl; using std::cin; int main(void) { double Bruttoankaufspreis, HändlerrabattP, Händlerrabatt,HändlerrabattSfr, SkontoHändler, SkontoHändlerP,SkontoHändlerSfr, Nettobarankauf; cout << "Bitte geben Sie die Zahlen zur Preiskalkulation des Bruttoankaufspreis ein:" << endl; cout << "Bruttoankaufspreis in Sfr:"; std::cin >> Bruttoankaufspreis; cout << "Haendlerrabatt in %:"; std::cin >> HändlerrabattP; cout << "Haendlerrabatt in Sfr:"; std::cin >> HändlerrabattSfr; cout << "SkontoHaendler in %:"; std::cin >> SkontoHändlerP; cout << "SkontoHaendler in Sfr:"; std::cin >> SkontoHändlerSfr; cout << "--------------------------------------------------------------------------------" << endl; Händlerrabatt = HändlerrabattP * Bruttoankaufspreis / 100; SkontoHändler = (Bruttoankaufspreis - Händlerrabatt) * SkontoHändlerP /100; Nettobarankauf = (Bruttoankaufspreis - Händlerrabatt - HändlerrabattSfr) - SkontoHändler - SkontoHändlerSfr; cout << " " << endl; std::cout << std::fixed; cout << "Nettobarankauf:" << endl; cout << " " << endl; cout << Nettobarankauf;cout << " Sfr " << endl; cout << " " << endl; cout << "--------------------------------------------------------------------------------" << endl; cout << "--------------------------------------------------------------------------------" << endl; cout << " " << endl; system("PAUSE");
-
Hallo,
zunächst einige Anmerkungen zu deinem Code:
Du solltest keine Umlaute verwenden. Das kann dir später Probleme bereiten.
Außerdem solltest du deinen Code richtig einrücken und mit Leerzeilen in logische Teile aufteilen.Dein Problem lässt sich mit
cout.precision(Nachkommastellen);
lösen. Damit werden die Nachkommastellen bei der Ausgabe unterdrückt. Bei Rechnungen wird aber trotzdem mit der Genauigkeit diedouble
bietet gerechnet.#include <iostream> using namespace std; // Überflüssig, wenn du ohnehin den ganzen Namensraum std mit using bekannt machst! /* using std::cout; using std::endl; using std::cin; */ int main(void) { double Bruttoankaufspreis; double HändlerrabattP, Händlerrabatt, HändlerrabattSfr; double SkontoHändler, SkontoHändlerP,SkontoHändlerSfr, Nettobarankauf; cout << "Bitte geben Sie die Zahlen zur Preiskalkulation des Bruttoankaufspreis ein:" << endl; cout << "Bruttoankaufspreis in Sfr:"; std::cin >> Bruttoankaufspreis; cout << "Haendlerrabatt in %:"; std::cin >> HändlerrabattP; cout << "Haendlerrabatt in Sfr:"; std::cin >> HändlerrabattSfr; cout << "SkontoHaendler in %:"; std::cin >> SkontoHändlerP; cout << "SkontoHaendler in Sfr:"; std::cin >> SkontoHändlerSfr; cout << "--------------------------------------------------------------------------------" << endl; Händlerrabatt = HändlerrabattP * Bruttoankaufspreis / 100; SkontoHändler = (Bruttoankaufspreis - Händlerrabatt) * SkontoHändlerP / 100; Nettobarankauf = (Bruttoankaufspreis - Händlerrabatt - HändlerrabattSfr) - SkontoHändler - SkontoHändlerSfr; cout << " " << endl; cout << "Nettobarankauf:" << endl; cout << " " << endl; // <-----################################## cout.precision(2); cout << std::fixed << Nettobarankauf; // ##################################-----> cout << " Sfr " << endl; cout << " " << endl; cout << "--------------------------------------------------------------------------------" << endl; cout << "--------------------------------------------------------------------------------" << endl; cout << " " << endl; system("PAUSE"); return 0; }
-
danke für die schnelle und prompte antwort und deine tipps