Programm rechnet nicht und schließt sich gleich



  • ich habe hier mein erstes selbstgeschriebendes Programm,
    mein problem ist, dass das programm auf der einen seite die von mir gevorderten rechnungen (hab sie markierrt), nicht vornimmt oder abspeicher
    und das sich das programm nach der ausgabe der Werte und schrift sofort schließt
    hier ist mal mein quellcode:

    #include <iostream>
    using namespace std;

    int main(){
    int a, b, m, n, x, y;
    cout << "Umsatz vor Steuer ( ermaeßigt )" << endl;
    cin >> a;
    cout << "Umsatz vor Steuer ( voll)" << endl;
    cin >> b;
    m = a / 100 * 7;
    n = b / 100 * 16;
    x = m + a;
    y = n + b;

    cout << "Umsatz vor Steuer (ermaeßigt): " << a << endl;
    cout << "Umsatz vor Steuer (voll) : " << b << endl;
    cout << "Umsatz v. St. (7%):" << a << "MWst:" << m << "Umsatz n. St.:" << x << endl;
    cout << "Umsatz v. St. (16%):" << b << "MWst:" << n << "Umsatz n. St.:" << y << endl;
    return 0;
    }

    freuhe mich über jede hilfe



  • TomOni schrieb:

    ich habe hier mein erstes selbstgeschriebendes Programm,
    mein problem ist, dass das programm auf der einen seite die von mir gevorderten rechnungen (hab sie markierrt), nicht vornimmt oder abspeicher
    und das sich das programm nach der ausgabe der Werte und schrift sofort schließt
    hier ist mal mein quellcode:

    #include <iostream>
    using namespace std;

    int main(){
    int a, b, m, n, x, y;
    cout << "Umsatz vor Steuer ( ermaeßigt )" << endl;
    cin >> a;
    cout << "Umsatz vor Steuer ( voll)" << endl;
    cin >> b;
    m = a / 100 * 7;
    n = b / 100 * 16;
    x = m + a;
    y = n + b;

    cout << "Umsatz vor Steuer (ermaeßigt): " << a << endl;
    cout << "Umsatz vor Steuer (voll) : " << b << endl;
    cout << "Umsatz v. St. (7%):" << a << "MWst:" << m << "Umsatz n. St.:" << x << endl;
    cout << "Umsatz v. St. (16%):" << b << "MWst:" << n << "Umsatz n. St.:" << y << endl;
    return 0;
    }

    freuhe mich über jede hilfe

    Shell = Shell
    Starte es mal in der konsole! bzw ,achj vor return 0; ein cin.get() oder so



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum DOS und Win32-Konsole verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • versuchs mal m.system("pause"); vorm return 0;

    MFG



  • Baltur schrieb:

    versuchs mal m.system("pause"); vorm return 0;

    MFG

    wozu system() benutzen wenns auch anders geht -.- ?

    cin.get()
    getchar()



  • super jetzt klappts thx



  • wozu system() benutzen wenns auch anders geht -.- ?

    cin.get()
    getchar()

    Ich weis nicht, ob ich das so richtig sehe, aber damit läufst du der Gefahr entgegen, dass sich noch was im Eingabepuffer befindet, was dann als Eingabe interpretiert wird. Besser du nimmst diese Funktion hier:

    void pause () 
    { 
      FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE)); 
      getch(); 
    }
    

    Oder das hier:

    void wait () 
    { 
        std::cin.clear(); 
        std::cin.ignore(std::cin.rdbuf()->in_avail()); 
        std::cin.get(); 
    }
    

    Ansonsten: http://www.c-plusplus.net/forum/viewtopic-var-t-is-111042.html 😉

    MfG, Mikey.



  • lieber kein system benutzen, je weniger desto besser 🙂



  • Und du solltest dein 'ß' mal in 'ss' umwandeln. oder besser noch: ne char Variable amchen und dann mittels ASCII-Zeichensatz richtig 'ä' und 'ß' schreiben. 🙂


Anmelden zum Antworten