<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[switch verlassen zu menue]]></title><description><![CDATA[<p>Hallo miteinander</p>
<p>Ein Mal mehr hoffe ich auf eure geniale Hilfe. Kann mir bitte jemand erklären, wie ich im folgenden Code die cases so verlassen kann, dass ich wieder ins Menue kommme? Hab ich das mit den breaks falsch gemacht?</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &quot;calc.h&quot;

int choice;
int main()
{

   cout &lt;&lt; &quot;Willkommen bei Calculator 1.2 Beta&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;Bitte waehlen Sie, die Operation,&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;die Sie ausfuehren moechten.\n&quot; &lt;&lt; endl;

   cout &lt;&lt; &quot;\tMenue:&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;----------------------&quot; &lt;&lt; endl;

   cout &lt;&lt; &quot;[1] -&gt; Addition\n&quot;;
   cout &lt;&lt; &quot;[2] -&gt; Subtraktion\n&quot;;
   cout &lt;&lt; &quot;[3] -&gt; Multiplikation\n&quot;;
   cout &lt;&lt; &quot;[4] -&gt; Division\n&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;Geben Sie Ihre Wahl ein: &quot; &lt;&lt; endl;
   cin &gt;&gt; choice;

   switch(choice)
  	{
       CRechnung eineRechnung;
   	case 0:
        cout &lt;&lt; &quot;\n\nplease press any key to escape&quot;;
         cin.sync();
		cin.get();
   	case 1:
         cout &lt;&lt;&quot;\nWerte fuer eine Summenberechnung eingeben:&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneSumme();
		   eineRechnung.Ausgeben();
      	break;
      case 2:
         cout &lt;&lt;&quot;\nWerte fuer eine Subtraktion eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneSubtraktion();
		   eineRechnung.Ausgeben();
         break;
      case 3:
		   cout &lt;&lt;&quot;\nWerte fuer eine Multiplikation eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneFaktor();
		   eineRechnung.Ausgeben();
         break;
      case 4:
	      cout &lt;&lt;&quot;\nWerte fuer eine Division eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
  		   eineRechnung.BerechneDivision();
		   eineRechnung.Ausgeben();
         break;
      default:
      	cout &lt;&lt;&quot;\nDies ist keine gueltige Eingabe&quot; &lt;&lt; endl;
         break;
   }
}
</code></pre>
<p>Natürlich freue ich mich auch über jegliche sonstige Anmerkungen und Verbesserungen zu meinem Code.</p>
<p>Vielen Dank für eure Hilfe</p>
<p>greetz<br />
nemico</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/129808/switch-verlassen-zu-menue</link><generator>RSS for Node</generator><lastBuildDate>Wed, 26 Aug 2026 10:18:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/129808.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 16 Dec 2005 19:17:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to switch verlassen zu menue on Fri, 16 Dec 2005 19:17:56 GMT]]></title><description><![CDATA[<p>Hallo miteinander</p>
<p>Ein Mal mehr hoffe ich auf eure geniale Hilfe. Kann mir bitte jemand erklären, wie ich im folgenden Code die cases so verlassen kann, dass ich wieder ins Menue kommme? Hab ich das mit den breaks falsch gemacht?</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &quot;calc.h&quot;

int choice;
int main()
{

   cout &lt;&lt; &quot;Willkommen bei Calculator 1.2 Beta&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;Bitte waehlen Sie, die Operation,&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;die Sie ausfuehren moechten.\n&quot; &lt;&lt; endl;

   cout &lt;&lt; &quot;\tMenue:&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;----------------------&quot; &lt;&lt; endl;

   cout &lt;&lt; &quot;[1] -&gt; Addition\n&quot;;
   cout &lt;&lt; &quot;[2] -&gt; Subtraktion\n&quot;;
   cout &lt;&lt; &quot;[3] -&gt; Multiplikation\n&quot;;
   cout &lt;&lt; &quot;[4] -&gt; Division\n&quot; &lt;&lt; endl;
   cout &lt;&lt; &quot;Geben Sie Ihre Wahl ein: &quot; &lt;&lt; endl;
   cin &gt;&gt; choice;

   switch(choice)
  	{
       CRechnung eineRechnung;
   	case 0:
        cout &lt;&lt; &quot;\n\nplease press any key to escape&quot;;
         cin.sync();
		cin.get();
   	case 1:
         cout &lt;&lt;&quot;\nWerte fuer eine Summenberechnung eingeben:&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneSumme();
		   eineRechnung.Ausgeben();
      	break;
      case 2:
         cout &lt;&lt;&quot;\nWerte fuer eine Subtraktion eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneSubtraktion();
		   eineRechnung.Ausgeben();
         break;
      case 3:
		   cout &lt;&lt;&quot;\nWerte fuer eine Multiplikation eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
		   eineRechnung.BerechneFaktor();
		   eineRechnung.Ausgeben();
         break;
      case 4:
	      cout &lt;&lt;&quot;\nWerte fuer eine Division eingeben&quot; &lt;&lt; endl;
		   eineRechnung.Erfassen();
  		   eineRechnung.BerechneDivision();
		   eineRechnung.Ausgeben();
         break;
      default:
      	cout &lt;&lt;&quot;\nDies ist keine gueltige Eingabe&quot; &lt;&lt; endl;
         break;
   }
}
</code></pre>
<p>Natürlich freue ich mich auch über jegliche sonstige Anmerkungen und Verbesserungen zu meinem Code.</p>
<p>Vielen Dank für eure Hilfe</p>
<p>greetz<br />
nemico</p>
]]></description><link>https://www.c-plusplus.net/forum/post/943787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943787</guid><dc:creator><![CDATA[nemico]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:17:56 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Fri, 16 Dec 2005 19:21:12 GMT]]></title><description><![CDATA[<p>goto oder ne schleife(for, do, do... while) <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> es gibt ne menge möglichkeiten <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
oder du machst ne extra funktion für das menu <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/943790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943790</guid><dc:creator><![CDATA[MartinMilbret]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:21:12 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Fri, 16 Dec 2005 19:22:06 GMT]]></title><description><![CDATA[<p>du willst dass sich etwas wiederholt und da ist eine schleife oft eine gute wahl.</p>
<p>du packst das menu einfach in eine nette schleife und schon springst du am ende des programms wieder zum menu zurueck <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/943792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943792</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Fri, 16 Dec 2005 19:22:06 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Fri, 16 Dec 2005 21:17:09 GMT]]></title><description><![CDATA[<p>...leider bin ich noch absoluter Anfänger und weiss nun nicht genau,<br />
was ich mit der schleife anfangen soll, bzw. wo ich sie genau setzen muss.<br />
Könnt ihr mir das noch ein wenig genauer erklären?</p>
<p>Vielen Dank für eure Hilfe<br />
Eure Antworten kamen ja echt super schnell!</p>
<p>gruss,<br />
nemico</p>
]]></description><link>https://www.c-plusplus.net/forum/post/943872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943872</guid><dc:creator><![CDATA[nemico]]></dc:creator><pubDate>Fri, 16 Dec 2005 21:17:09 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Fri, 16 Dec 2005 22:25:05 GMT]]></title><description><![CDATA[<p>will mal nicht so sein</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &quot;calc.h&quot;

int choice;
int main()
{
   choice = 1;
   while ( choice ) {
      cout &lt;&lt; &quot;Willkommen bei Calculator 1.2 Beta&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;Bitte waehlen Sie, die Operation,&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;die Sie ausfuehren moechten.\n&quot; &lt;&lt; endl;

      cout &lt;&lt; &quot;\tMenue:&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;----------------------&quot; &lt;&lt; endl;

      cout &lt;&lt; &quot;[0] -&gt; Ende\n&quot;;
      cout &lt;&lt; &quot;[1] -&gt; Addition\n&quot;;
      cout &lt;&lt; &quot;[2] -&gt; Subtraktion\n&quot;;
      cout &lt;&lt; &quot;[3] -&gt; Multiplikation\n&quot;;
      cout &lt;&lt; &quot;[4] -&gt; Division\n&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;Geben Sie Ihre Wahl ein: &quot; &lt;&lt; endl;
      cin &gt;&gt; choice;

      switch(choice)
      {
          CRechnung eineRechnung;
          case 0:
            cout &lt;&lt; &quot;\n\nplease press any key to escape&quot;;
            cin.sync();
            cin.get();
            break;
          case 1:
            cout &lt;&lt;&quot;\nWerte fuer eine Summenberechnung eingeben:&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneSumme();
              eineRechnung.Ausgeben();
             break;
         case 2:
            cout &lt;&lt;&quot;\nWerte fuer eine Subtraktion eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneSubtraktion();
              eineRechnung.Ausgeben();
            break;
         case 3:
              cout &lt;&lt;&quot;\nWerte fuer eine Multiplikation eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneFaktor();
              eineRechnung.Ausgeben();
            break;
         case 4:
             cout &lt;&lt;&quot;\nWerte fuer eine Division eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
                eineRechnung.BerechneDivision();
              eineRechnung.Ausgeben();
            break;
         default:
             cout &lt;&lt;&quot;\nDies ist keine gueltige Eingabe&quot; &lt;&lt; endl;
            break;
      }
   }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/943930</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/943930</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Fri, 16 Dec 2005 22:25:05 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Sat, 17 Dec 2005 01:41:56 GMT]]></title><description><![CDATA[<p>ZuK schrieb:</p>
<blockquote>
<p>will mal nicht so sein</p>
</blockquote>
<p>fein. du hast den besten code gebaut, der in lehrbüchern zu finden ist. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>ich mag unnötigerweise noch hinzufügen, daß ich lehrbuchcode oft suboptimal finde und folgenden dagegenstellen.</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &quot;calc.h&quot;

int choice;
int main()
{
   for(;;) {
      cout &lt;&lt; &quot;Willkommen bei Calculator 1.2 Beta&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;Bitte waehlen Sie, die Operation,&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;die Sie ausfuehren moechten.\n&quot; &lt;&lt; endl;

      cout &lt;&lt; &quot;\tMenue:&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;----------------------&quot; &lt;&lt; endl;

      cout &lt;&lt; &quot;[0] -&gt; Ende\n&quot;;
      cout &lt;&lt; &quot;[1] -&gt; Addition\n&quot;;
      cout &lt;&lt; &quot;[2] -&gt; Subtraktion\n&quot;;
      cout &lt;&lt; &quot;[3] -&gt; Multiplikation\n&quot;;
      cout &lt;&lt; &quot;[4] -&gt; Division\n&quot; &lt;&lt; endl;
      cout &lt;&lt; &quot;Geben Sie Ihre Wahl ein: &quot; &lt;&lt; endl;
      cin &gt;&gt; choice;

      switch(choice)
      {
          CRechnung eineRechnung;
          case 0:
            cout &lt;&lt; &quot;\n\nplease press any key to escape&quot;;
            cin.sync();
            cin.get();
            return 0;
          case 1:
            cout &lt;&lt;&quot;\nWerte fuer eine Summenberechnung eingeben:&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneSumme();
              eineRechnung.Ausgeben();
             break;
         case 2:
            cout &lt;&lt;&quot;\nWerte fuer eine Subtraktion eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneSubtraktion();
              eineRechnung.Ausgeben();
            break;
         case 3:
              cout &lt;&lt;&quot;\nWerte fuer eine Multiplikation eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
              eineRechnung.BerechneFaktor();
              eineRechnung.Ausgeben();
            break;
         case 4:
             cout &lt;&lt;&quot;\nWerte fuer eine Division eingeben&quot; &lt;&lt; endl;
              eineRechnung.Erfassen();
                eineRechnung.BerechneDivision();
              eineRechnung.Ausgeben();
            break;
         default:
             cout &lt;&lt;&quot;\nDies ist keine gueltige Eingabe&quot; &lt;&lt; endl;
            break;
      }
   }
}
</code></pre>
<p>begründung: für mich sieht das programm nach eine schleife aus, die immer wieder sich wiederholt (endlosschleife), außer im ungewöhnlichen fall, daß jemand die 0 drückt (dann ist in diesem case das return).</p>
<p>die herangehensweise, von vornherein wissen zu müssen, unter welchen umständen das programm aufhört, ist mir fremd. ich müßte den fall, daß jemand die 0 drückt, zugleich im case 0 und in der schleifenbedinbgung berücksichtigen. das ist mir fast zu denk-aufwändig. und ich bin mir fast sicher, daß mit mehrern austeigsgründen ich bei dem lehrbuch-design voll die panik kriegen würde.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a>: soll keine mecker sein. dein code ist bestens. aber wir lösen uns (oder bin ich allein?) in c++ zur zeit recht heftig von alten heiligen regeln des strukturierten programmierens, wodurch der stil auch einfachster schleifen gar arg mutiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/944020</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/944020</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sat, 17 Dec 2005 01:41:56 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Sat, 17 Dec 2005 09:19:02 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7155">@ZuK</a>: soll keine mecker sein. dein code ist bestens. aber wir lösen uns (oder bin ich allein?) in c++ zur zeit recht heftig von alten heiligen regeln des strukturierten programmierens, wodurch der stil auch einfachster schleifen gar arg mutiert.</p>
</blockquote>
<p>Ich möchte dazu anmerken dass ich, hätte ich den ganzen code geschrieben, wahrscheinlich etwas ähnliches gemacht hätte ( while(true) ? ). Irgendwie war die Ändeung so am einfachsten. Zumindest erkennt man so am schnellsten was ich da dazugebaut habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/944070</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/944070</guid><dc:creator><![CDATA[ZuK]]></dc:creator><pubDate>Sat, 17 Dec 2005 09:19:02 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Sat, 17 Dec 2005 09:33:18 GMT]]></title><description><![CDATA[<p>Mal ne frage zum thema schleifen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /> ist es schlimm wenn man nur for schleifen nuzt oder sollte ich auch brav do und do... while schleifen nutzen? oder ist das doch egal?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/944075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/944075</guid><dc:creator><![CDATA[MartinMilbret]]></dc:creator><pubDate>Sat, 17 Dec 2005 09:33:18 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Sat, 17 Dec 2005 09:44:40 GMT]]></title><description><![CDATA[<p>MartinMilbret schrieb:</p>
<blockquote>
<p>Mal ne frage zum thema schleifen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61b.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_tongue"
      title=":P"
      alt="😛"
    /> ist es schlimm wenn man nur for schleifen nuzt oder sollte ich auch brav do und do... while schleifen nutzen? oder ist das doch egal?</p>
</blockquote>
<p>man sollte for-schleifen benutzen, wenn vorher klar ist, von wo bis wo die schleife läuft und keiner an den schleifenvariablen rumfummelt.</p>
<p>for(int i=0;i&lt;anzahl;++i)<br />
tuwas;</p>
<p>for(vector&lt;double&gt;::iterator i=v.begin();i=!v.end();++i)<br />
tuwas;</p>
<p>for(Node* pos=anchor;pos!=0;pos=pos-&gt;next)<br />
tuwas;</p>
<p>man sollte while nehmen, wenn das nicht so ist.</p>
<p>for(int i;cin&lt;&lt;i;cout&gt;&gt;i)//autsch!<br />
;</p>
<p>man sollte tunlichst do nehmen, wenn folgender code auftaucht</p>
<p>if(bedingung)<br />
while(bedingung)//gleiche bedingung wie oben<br />
tuwas;</p>
<p>ansonsten fristet do ein schattendasein, nicht so selten wie switch, goto oder break und seltener als continue, protected oder virtual.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/944082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/944082</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Sat, 17 Dec 2005 09:44:40 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Sun, 18 Dec 2005 17:20:05 GMT]]></title><description><![CDATA[<p>hey das ist ja toll!</p>
<p>Ich danke euch vieeelmals für eure Hilfe!<br />
Das ist echt super!</p>
<p>DANKE</p>
<p>gruss,<br />
nemico</p>
]]></description><link>https://www.c-plusplus.net/forum/post/944976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/944976</guid><dc:creator><![CDATA[nemico]]></dc:creator><pubDate>Sun, 18 Dec 2005 17:20:05 GMT</pubDate></item><item><title><![CDATA[Reply to switch verlassen zu menue on Mon, 19 Dec 2005 07:40:24 GMT]]></title><description><![CDATA[<p>Kleine Anmerkung: Ich bezweifle irgendwie, daß ein Compiler das &quot;CRechnung eineRechnung;&quot; am Anfang des switch unkommentiert stehen lässt - die Anweisung (Konstruktor-Aufruf) steht vor allen case-Blöcken und wird damit garantiert übergangen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/945277</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/945277</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 19 Dec 2005 07:40:24 GMT</pubDate></item></channel></rss>