Kommandofenster schließt sich nach Eingabe



  • Hi,
    habe ien Problem. Muss dazu sagen dass ich absoluter Anfänger bin und es darum ein einfaches für euch ist 😉

    Also mein Prob ist, dass sich bei folgendem Code sich das Kommandofenster nach der Eingabe der drei Zahlen schließt (nach der dritten Enter-"Drückung").

    ich weiß, dass der code auch noch einfacher geht, aber ich will den Fehler hierbei wissen.

    #include<iostream>
      using namespace std;
    
      int main()
      {
    	cout<<"Bitte eine Zahl eingeben\n";
    	int a;
    	cin>>a;
    	cout<<"Bitte die zweite Zahl\n";
    	int b;
    	cin>>b;
    	cout<<"Und die letzte\n";
    	int c;
    	cin>>c;
    
    	if(a>b && a>c && b<c)
    		{
    			cout<<a<<"ist die größte Zahl und"<<b<<"die kleinste";
    		}
    	else if(a>b && a>c && b>c)
    		{
    			cout<<a<<"ist die größte Zahl und"<<c<<"die kleinste";
    		}
    	else if(b>a && b>c && a<c)
    		{
    			cout<<b<<"ist die größte Zahl und"<<a<<"die kleinste";
    		}
    	else if(b>a && b>c && a>c)
    		{
    			cout<<b<<"ist die größte Zahl und"<<c<<"die kleinste";
    		}
    	else if(c>a && c>b && a<b)
    		{
    			cout<<c<<"ist die größte Zahl und"<<a<<"die kleinste";
    		}
    	else
    		{
    			cout<<c<<"ist die größte Zahl und"<<b<<"die kleinste";
    		}
            cout<<"\n";
    	}
    

    EDIT: Es wird kein Fehler angezeigt wie in dem bereits existierenden Post in diesm Forum beschrieben.



  • Ja, was soll denn Dein Programm auch tun? Es geht doch mit der letzten Zeile raus... wo soll es denn warten?

    Also, entweder Du drückst Ctrl-F5 oder Du bauchst ein Warten ein...



  • oder stastest das programm aus der Kommandozeile aus



  • es soll die lsg anzeigen also welche zahl die größte und welche die kleinste ist...





  • #include<iostream>
      using namespace std;
    
      void wait ()
      {
        std::cin.clear();
        std::cin.ignore(std::cin.rdbuf()->in_avail());
        std::cin.get();
      } 
    
      int main()
      {
    	cout<<"Bitte eine Zahl eingeben\n";
    	int a;
    	cin>>a;
    	cout<<"Bitte die zweite Zahl\n";
    	int b;
    	cin>>b;
    	cout<<"Und die letzte\n";
    	int c;
    	cin>>c;
    
    	if(a>b && a>c && b<c)
    		{
    			cout<<a<<"ist die größte Zahl und"<<b<<"die kleinste";
    		}
    	else if(a>b && a>c && b>c)
    		{
    			cout<<a<<"ist die größte Zahl und"<<c<<"die kleinste";
    		}
    	else if(b>a && b>c && a<c)
    		{
    			cout<<b<<"ist die größte Zahl und"<<a<<"die kleinste";
    		}
    	else if(b>a && b>c && a>c)
    		{
    			cout<<b<<"ist die größte Zahl und"<<c<<"die kleinste";
    		}
    	else if(c>a && c>b && a<b)
    		{
    			cout<<c<<"ist die größte Zahl und"<<a<<"die kleinste";
    		}
    	else
    		{
    			cout<<c<<"ist die größte Zahl und"<<b<<"die kleinste";
    		}
            cout<<"\n";
    	}
    

    hab das jetzt so, abes es geht iwie noch nciht...

    gibt es eigtl ein fehlersuchsystem?



  • 1. Du solltest vielleicht auch noch "wait" am Ende aufrufen...
    2. Ja, das Fehlersuchsystem heisst "debuggen"



  • Zum Thema Debuggen kannst du dir diesen Artikel mal genau durchlesen:

    http://magazin.c-plusplus.net/artikel/Debuggen mit VCPlusPlus6

    Der bezieht sich zwar auf das veraltete Visual Studio 6, liefert dir aber das Wissen über grundlegende Debugging-Mechanismen, die natürlich auch in aktuelleren VS-Versionen und auch in anderen IDEs verwendet werden (auch, wenn es da machmal etwas anders aussieht 😉 ).


Anmelden zum Antworten