<?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[Fehleingaben bei c++ mit while Schleife abfangen.]]></title><description><![CDATA[<p>Ich habe ein Programm geschrieben, dass ne zahl zwischen 1 und 100 erraten kann.<br />
Bloß scheiter ich an dem Fehlerabfang wenn z.B. einer nen Buchstaben eingibt.<br />
Die Prämisse ist, dass wir es mit einer while schleife machen sollen, aber wenn ich es mit while(cin.fail()) probiere hängt sich das Programm bei mir auf und wenn man ne Fehleingabe macht, reagiert es danach nich mehr.<br />
Wär nett wenn ihr mir helfen könnt.<br />
greg<br />
#include&lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>int main() {<br />
cout&lt;&lt; &quot;Denken sie sich eine Zahl zwischen 1 und 100&quot; &lt;&lt; endl;<br />
int untereGrenze=0;<br />
int obereGrenze=100;<br />
int Mittelwert=50;<br />
int auswahl;<br />
while (untereGrenze!=obereGrenze-1)<br />
{ Mittelwert=(untereGrenze+obereGrenze)/2;</p>
<p>cout&lt;&lt; &quot;Ist ihre Zahl groesser als &quot; &lt;&lt; Mittelwert &lt;&lt; &quot; geben sie 1 ein ansonsten 2 .&quot; &lt;&lt; endl;<br />
cin&gt;&gt; auswahl;</p>
<p>while (cin.fail())<br />
{cout&lt;&lt; &quot;Bitte eine Zahl&quot; &lt;&lt; endl;<br />
cin.clear();<br />
cin.ignore(256,'n');<br />
cin&gt;&gt; auswahl;} // Hier weiss ich nich wie ich das schreiben soll.</p>
<p>if (auswahl==1)<br />
{ untereGrenze=Mittelwert; }<br />
else<br />
obereGrenze=Mittelwert;<br />
}</p>
<p>cout&lt;&lt; &quot;Ist ihre Zahl &quot; &lt;&lt; Mittelwert &lt;&lt; &quot;?&quot; &lt;&lt; endl;<br />
system (&quot;pause&quot;);<br />
return 0;</p>
<p>}</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/303837/fehleingaben-bei-c-mit-while-schleife-abfangen</link><generator>RSS for Node</generator><lastBuildDate>Mon, 10 Aug 2026 06:31:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/303837.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 23 May 2012 14:25:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehleingaben bei c++ mit while Schleife abfangen. on Wed, 23 May 2012 14:25:59 GMT]]></title><description><![CDATA[<p>Ich habe ein Programm geschrieben, dass ne zahl zwischen 1 und 100 erraten kann.<br />
Bloß scheiter ich an dem Fehlerabfang wenn z.B. einer nen Buchstaben eingibt.<br />
Die Prämisse ist, dass wir es mit einer while schleife machen sollen, aber wenn ich es mit while(cin.fail()) probiere hängt sich das Programm bei mir auf und wenn man ne Fehleingabe macht, reagiert es danach nich mehr.<br />
Wär nett wenn ihr mir helfen könnt.<br />
greg<br />
#include&lt;iostream&gt;</p>
<p>using namespace std;</p>
<p>int main() {<br />
cout&lt;&lt; &quot;Denken sie sich eine Zahl zwischen 1 und 100&quot; &lt;&lt; endl;<br />
int untereGrenze=0;<br />
int obereGrenze=100;<br />
int Mittelwert=50;<br />
int auswahl;<br />
while (untereGrenze!=obereGrenze-1)<br />
{ Mittelwert=(untereGrenze+obereGrenze)/2;</p>
<p>cout&lt;&lt; &quot;Ist ihre Zahl groesser als &quot; &lt;&lt; Mittelwert &lt;&lt; &quot; geben sie 1 ein ansonsten 2 .&quot; &lt;&lt; endl;<br />
cin&gt;&gt; auswahl;</p>
<p>while (cin.fail())<br />
{cout&lt;&lt; &quot;Bitte eine Zahl&quot; &lt;&lt; endl;<br />
cin.clear();<br />
cin.ignore(256,'n');<br />
cin&gt;&gt; auswahl;} // Hier weiss ich nich wie ich das schreiben soll.</p>
<p>if (auswahl==1)<br />
{ untereGrenze=Mittelwert; }<br />
else<br />
obereGrenze=Mittelwert;<br />
}</p>
<p>cout&lt;&lt; &quot;Ist ihre Zahl &quot; &lt;&lt; Mittelwert &lt;&lt; &quot;?&quot; &lt;&lt; endl;<br />
system (&quot;pause&quot;);<br />
return 0;</p>
<p>}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2214566</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2214566</guid><dc:creator><![CDATA[ElFettsacko]]></dc:creator><pubDate>Wed, 23 May 2012 14:25:59 GMT</pubDate></item><item><title><![CDATA[Reply to Fehleingaben bei c++ mit while Schleife abfangen. on Wed, 23 May 2012 14:48:34 GMT]]></title><description><![CDATA[<p>ersetze cin.ignore(256,'n'); durch cin.ignore(256,<strong>'\n'</strong>);</p>
<p>PS: Und verwende das nächste mal, wenn du Code postest, bitte die C/C++ Tags (unter den Smilies).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2214569</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2214569</guid><dc:creator><![CDATA[pyhax]]></dc:creator><pubDate>Wed, 23 May 2012 14:48:34 GMT</pubDate></item><item><title><![CDATA[Reply to Fehleingaben bei c++ mit while Schleife abfangen. on Wed, 23 May 2012 19:31:38 GMT]]></title><description><![CDATA[<p>Dankeschön funtzt jetzt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2214686</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2214686</guid><dc:creator><![CDATA[ElFettsacko]]></dc:creator><pubDate>Wed, 23 May 2012 19:31:38 GMT</pubDate></item></channel></rss>