unterschied: do-while, while



  • worin liegt der Unterschied?

    Das hier funktioniert:

    enum Ampel
    	{
    		rot, rot_gelb, gruen, gelb, rot2
    	};
    	Ampel any = rot;
        do
    	{
    		switch(any)
    		{
    		case rot:
    			cout << "ROT" << endl;
    			any = rot_gelb;
    			break;
    		case rot_gelb:
    			cout << "Rot-Gelb" << endl;
    			any = gruen;
    			break;
    		case gruen:
    			cout << "Gruen" << endl;
    			any = gelb;
    			break;
    		case gelb:
    			cout << "Gelb";
    			any = rot2;
    			break;
    		}
    	} while(any != rot);
    

    das nicht:

    enum Ampel
    	{
    		rot, rot_gelb, gruen, gelb, rot2
    	};
    	Ampel any = rot;
        while(any != rot)
    	{
    		switch(any)
    		{
    		case rot:
    			cout << "ROT" << endl;
    			any = rot_gelb;
    			break;
    		case rot_gelb:
    			cout << "Rot-Gelb" << endl;
    			any = gruen;
    			break;
    		case gruen:
    			cout << "Gruen" << endl;
    			any = gelb;
    			break;
    		case gelb:
    			cout << "Gelb";
    			any = rot2;
    			break;
    		}
    	}
    

    liebe grüße



  • Ampel any = rot;
    while(any != rot)
    

    Die Schleife wird nie betreten.



  • bei der "do-while" wird zu erst der Schleifen inhalt iteriert, bevor die Schleifenbedingung abgefragt wird!


Anmelden zum Antworten