sleepy123
Goto Top

Mehrwertsteuerprogramm verschwindet nach eingabe!

Hallo

Ich bin gerade dabei C++ zu lernen, läuft auch alles soweit ganz gut, bis auf.

Wenn ich nach der Eingabe von dem Nettobetrag die Enter taste drücke flieg ich aus dem Programm raus.

Und ich würde gern wissen wiso, denn der Compiler hat mir keine fehler angezeigt.

#include <iostream>
using namespace std;

const float MwSt = 16;

int main()
{
    float Netto, Steuer, Brutto;
    
    cout << "Bitte geben Sie den Nettopreis ein!" << endl;  
    cin >> Netto;
    Steuer = Netto * MwSt / 100;
    cout << "MwSt: " << Steuer << endl;  
    Brutto = Netto + Steuer;
    cout << "Brutto: " << Brutto << endl;  
}

Content-ID: 123267

Url: https://administrator.de/contentid/123267

Ausgedruckt am: 22.11.2024 um 04:11 Uhr

maretz
maretz 22.08.2009 um 10:38:28 Uhr
Goto Top
a) weil dein programm mindestens 3 jahre alt ist -> 16% Mehrwertsteuer war mal ... *nostalgische gefühle aufkommen läßt*

b) gibt es ne fehlermeldung?
sleepy123
sleepy123 22.08.2009 um 10:51:25 Uhr
Goto Top
Wie oben bereits erwähnt.

Nein eine Fehlermedung kommt nicht, dass Programm öffnet sich ich kann den Nettobetrag eingeben und wenn ich dann auf Enter drücke, schließt es sich!
pulse
pulse 22.08.2009 um 11:33:14 Uhr
Goto Top
Sobald du Enter drücktst, wird die eingaben in Netto reingeschrieben und alle nachfolgenden Schritte ausgeführt.
Da du am Ende deines Hauptprogramms keine Art "Stop" oder so hast, wird das programm sofort geschlossen.
versuchs mal mit
system("pause");  
das setzt du direkt nach
cout << "Brutto: " << Brutto << endl;   
generell solltest du aber aus sicherheitsgründen auf die system-funktion verzichten...aber hier reicht das zum testen.

Außerdem fehlt am ende deiner funktion ein "return"
Wundert mich dass der compiler da nicht meckert, weil bei deiner Mainfunktion eigentlich ein int rückgabewert erwartet werden sollte.
sleepy123
sleepy123 22.08.2009 um 11:41:13 Uhr
Goto Top
welche andere möglichkeit gibt es denn noch, das system auf eine eingabe warten zu lassen?
maretz
maretz 22.08.2009 um 11:44:23 Uhr
Goto Top
naja - notfalls einfach nochmal nen cin reinpacken (geht sicher auch schöner - hab c++ zum letzten mal am anfang meines studiums gesehen und seid dem nie wieder vermisst ;) )
76109
76109 22.08.2009 um 13:43:06 Uhr
Goto Top
Hallo zusammen!

Wenn ich mich recht erinnere, dann gibt's noch sowas wie:
while(!kbhit());
Auf beliebigen Tastendruck warten.

Gruß Dieter
sleepy123
sleepy123 22.08.2009 um 14:45:40 Uhr
Goto Top
hi dann hab ich grad nochwas!

ich habe eben mal ein bisschen rumgespielt und wollte mir dann folgendes ausgeben lassen.

sry aus freiem gedächnis weis ich nicht wie ich den in einem quelltext fenster einfüge!

#include <iostream>
#include <string>
using namespace std;

int main()
{
cout << ("hack") << endl;
system("pause");
}

warum erkennt mein antivieren programm das als trojaner?
dog
dog 22.08.2009 um 16:46:04 Uhr
Goto Top
cin >> Netto;

Ich kenne nur C und da wäre diese Zeile tödlich, ganz einfach weil stdin immer einen String mit einem \n am Ende liefert und keine Fließkommazahl.

In C müsste man also schreiben:
float netto;
scanf("%f",&netto);  

Grüße

Max
sleepy123
sleepy123 22.08.2009 um 17:19:36 Uhr
Goto Top
ich danke allen die rein geschaut und mir geantwortet haben!