For Schleife um switch Anweisung



  • Hoppla! Shame on me!



  • SeppJ schrieb:

    Fuchs aus dem Wald schrieb:

    [cpp] ***CODE*** [/cpp]

    Deprecated!
    [code="cpp"][/code]

    Nene, funktioniert schon. Man darf die Tags nur nich manipulieren (er hatte [cp[ b ]p] geschrieben)... das gilt wohl für alle Tags.

    cout << "Test";
    

  • Mod

    out schrieb:

    SeppJ schrieb:

    Fuchs aus dem Wald schrieb:

    [cpp] ***CODE*** [/cpp]

    Deprecated!
    [code="cpp"][/code]

    Nene, funktioniert schon. Man darf die Tags nur nich manipulieren (er hatte [cp[ b ]p] geschrieben)... das gilt wohl für alle Tags.

    cout << "Test";
    

    😕 Das war nicht, was ich und Fuchs aus dem Wald sagen wollten. Natürlich funktionieren die Tags. Wenn man jemandem zeigen will, wie sie funktionieren, dann muss man sie stören, damit sie nicht vom Forum verarbeitet werden.



  • SeppJ schrieb:

    out schrieb:

    SeppJ schrieb:

    Fuchs aus dem Wald schrieb:

    [cpp] ***CODE*** [/cpp]

    Deprecated!
    [code="cpp"][/code]

    Nene, funktioniert schon. Man darf die Tags nur nich manipulieren (er hatte [cp[ b ]p] geschrieben)... das gilt wohl für alle Tags.

    cout << "Test";
    

    😕 Das war nicht, was ich und Fuchs aus dem Wald sagen wollten. Natürlich funktionieren die Tags. Wenn man jemandem zeigen will, wie sie funktionieren, dann muss man sie stören, damit sie nicht vom Forum verarbeitet werden.

    Ich hatte seine Aussage "Hoppla! Shame on me!" so interpretiert, als meine er nun, dass die Tags nicht mehr funktionierten. Ansonsten mein Fehler ja.



  • crack1337 schrieb:

    while (ch != 'e');
    ja ich habs jetzt mit einer do while schleife gemacht und es geht...

    Reicht da nicht auch eine ganz normale while?? So:

    while(ch != 'e' || ch != 'E')
    

    So hast du auch großes und kleines E. Da wenn es E oder e ist beendest du ja eh.


  • Mod

    Alle Schleifen sind natürlich mehr oder weniger äquivalent, aber ein do...while drückt hier doch die Absicht am besten aus. Schließlich soll die Schleife auf jeden Fall einmal durchlaufen werden. Ein pre-checked Konstrukt drückt hingegen die Möglichkeit aus, dass ch auch schon im Vorhinein 'e' sein könnte. Hier müsste man sogar das ch noch zusätzlich mit einem Wert ungleich 'e' initialisieren, obwohl es direkt danach wieder überschrieben wird. Etwas was bei do...while nicht nötig ist.



  • Fuchs aus dem Wald schrieb:

    Reicht da nicht auch eine ganz normale while?? So:

    while(ch != 'e' || ch != 'E')
    

    So hast du auch großes und kleines E. Da wenn es E oder e ist beendest du ja eh.

    Prinzipiell kannst du jede Schleifenart durch eine andere ersetzen. Aber eine do-while gibt es ja auch nicht umsonst, und wird häufig bei Menüs benutzt. Das Menü muss ja min. 1x angezeigt werden, ansosnten steht der User ja im Dunkeln... wenn nichts angezeigt wird, weiß er auch net was er machen soll. Darum ist do-while hier schon sinnvoll, sie läuft immer min. 1x durch ➡ das Menü wird min. 1x angezeigt.

    Das continue ist natürlich Schwachsinn, genauso wie die Bedingung in der while.



  • Ah ok 😃
    Und was ist hier mit:

    showmenue(); 
    cout << "Buchstabe eingeben";
    

    Muss das in die do mit rein?



  • Fuchs aus dem Wald schrieb:

    Ah ok 😃
    Und was ist hier mit:

    showmenue(); 
    cout << "Buchstabe eingeben";
    

    Muss das in die do mit rein?

    int main()
    {
    
    	// 1. Variante mit do-while:
    	{
    		char eingabe;
    		do
    		{
    			show_menue();
    			cin >> eingabe;
    			// switch etc.
    		}
    		while( eingabe!='e' && eingabe!='E' );
    	}
    
    	// 2. Variante mit while:
    	{
    		show_menue();
    		char eingabe = 0;
    		while( eingabe!='e' && eingabe!='E' )
    		{
    			// switch etc.
    			show_menue();
    			cin >> eingabe;
    		}
    	}
    
    	// 3. Variante mit for:
    	{
    		show_menue();
    		for(char eingabe=0; eingabe!='e' && eingabe!='E'; show_menue())
    		{
    			// switch etc.
    			cin >> eingabe;
    		}
    	}
    }
    


  • Wenn ich mir das so anschaue, finde ich die for-Variante gar nicht mal so doof. Irgendwie mag ich for-Schleifen allgemein am liebste. 😃



  • Danke out. 🙂
    Ist zwar nicht mein Thema aber ich glaube jetzt hab nicht nur ich das alles verstanden. 😃



  • out schrieb:

    Wenn ich mir das so anschaue, finde ich die for-Variante gar nicht mal so doof. Irgendwie mag ich for-Schleifen allgemein am liebste. 😃

    Urgs, das show_menu muss vor die Eingabe. Mein Fehler. Dann sieht die for-Variante auch nicht mehr so toll aus.



  • ...


Anmelden zum Antworten