C++, falscher Quelltext???

jonlu

Bürger
Hallo!

Ich suche einen Fehler in dem Quelltext/bzw eine bestätigung das der Quelltext richtig ist. er ist in C++ geschrieben ich lerne gerade das Programmieren, und da funktioniert der Code nicht, es stürzt immer nach der eingabe der 2 Zahlen ab! Ich habe einen Kommentar an der Stelle hinterlassen. Ich benutze Windoof Vista und den Conpiler Dev-C++!

#include <iostream>
using namespace std;

int main()
{
cout<<"Bitte geben Sie eine Zahl ein\n";
int a;
cin>>a;
cout<<"Bitte geben Sie noch eine Zahl ein\n";
int b;
cin>>b;// Hier stürzt oder beendet sich das Programm

if(a==b)
{
cout<<"Beide Zahlen sind gleich";
}
if(a<b)
{
cout<<a<<" ist kleiner als "<<b;
}
if(a>b)
{
cout<<a<<" ist größer als "<<b;
}
cout<<"\n";
}
 
Wahrscheinlich beendet sich dein Programm einfach.Sprich: Du gibst dein b ein, das Fenster sagt seinen Satz und schließt sich dann gleich. So schnell, dass du das gar nicht siehst. Probier mal am Ende des Quelltextes noch
PHP:
cin.get();
einzufügen. Dieser Befehl hält das Programm bis zum nächsten Tastendruck an.

Ansonsten kann ich die für Fragen in Sachen Programmierung c-plusplus.de empfehlen. Sind nette und hilfsbereite Leute. :)
 
Supi, du hast recht daran habe ich garnicht gedacht!
Allerdings muss man es in jede der If-Bedingungen einsetzen...
Hat aber gefunzt danke!

Mfg
Jonlu
 
Du könntest es auch so machen:
Code:
#include <iostream>
    using namespace std;

    int main()
    {
        cout<<"Bitte geben Sie eine Zahl ein\n";
        int a;
        cin>>a;
        cout<<"Bitte geben Sie noch eine Zahl ein\n";
        int b;
        cin>>b;// Hier stürzt oder beendet sich das Programm

        if(a==b)
        {
            cout<<"Beide Zahlen sind gleich";
        }
        elseif(a<b)
        {
            cout<<a<<" ist kleiner als "<<b;
        }
else
        {
            cout<<a<<" ist größer als "<<b;
        }
        cout<<"\n";
cin.get();
    }
So macht eine if-Schleife auch mehr Sinn.
 
oder so:
Code:
    #include <iostream>
    using namespace std;

    int main()
    {
        cout<<"Bitte geben Sie eine Zahl ein\n";
        int a;
        cin>>a;
        cout<<"Bitte geben Sie noch eine Zahl ein\n";
        int b;
        cin>>b;// Hier stürzt oder beendet sich das Programm

        if(a==b)
        {
            cout<<"Beide Zahlen sind gleich";
        }
        else
        {
            cout<<a<<" ist "<<(a<b ? "kleiner" : "größer")<<" als "<<b;
        }
        cout<<"\n";
        cin.get();
    }

man kanns auch noch weiter vereinfachen, aber dann wirds schwierig mit der Lesbarkeit ;)