<?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[Fehler bei Kontrollstruktur]]></title><description><![CDATA[<p>Wieso funktioniert das nicht?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

int main()
{
    int Buffer[20];
    std::cout&lt;&lt; &quot;Gebe bitte eine Zahl ueber 100 ein!&quot;&lt;&lt;std::flush;
    std::cin&gt;&gt;Buffer[20];
    if (Buffer &lt; 100)
    {
        std::cout&lt;&lt;&quot;Sorry! Leider hast du eine Zahl unter 100 eingegeben. Das geht nicht.&quot;&lt;&lt;std::endl;
    }
    else
    {
        std::cout&lt;&lt;&quot;Super! Du bekommst nun 5000 Programmpunkte.&quot;&lt;&lt;std::endl;
    }
}
</code></pre>
<p>Eigentlich sieht die Übung so aus:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;cstdlib&gt; 

int main() 
{ 
  char Buffer[20]; 

  std::cout &lt;&lt; &quot;Geben Sie eine Zahl ein: &quot; &lt;&lt; std::flush; 
  std::cin.get(Buffer, sizeof(Buffer)); 
  if (std::atoi(Buffer) &lt; 100) 
  { 
    std::cout &lt;&lt; &quot;Sie haben eine Zahl kleiner als 100 eingegeben.&quot; &lt;&lt; std::endl; 
  } 
}
</code></pre>
<p>Aber ich experimentiere gerne und lerne dadurch wesentlich schneller durch die Fehler die ich mache. Aber wie ist es denn richtig? Und, ist dieses atoi wirklich quatsch? Kann man ja auch so machen wie ich jetzt, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/233760/fehler-bei-kontrollstruktur</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 17:14:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/233760.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 08 Feb 2009 20:44:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehler bei Kontrollstruktur on Mon, 09 Feb 2009 11:33:17 GMT]]></title><description><![CDATA[<p>Wieso funktioniert das nicht?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

int main()
{
    int Buffer[20];
    std::cout&lt;&lt; &quot;Gebe bitte eine Zahl ueber 100 ein!&quot;&lt;&lt;std::flush;
    std::cin&gt;&gt;Buffer[20];
    if (Buffer &lt; 100)
    {
        std::cout&lt;&lt;&quot;Sorry! Leider hast du eine Zahl unter 100 eingegeben. Das geht nicht.&quot;&lt;&lt;std::endl;
    }
    else
    {
        std::cout&lt;&lt;&quot;Super! Du bekommst nun 5000 Programmpunkte.&quot;&lt;&lt;std::endl;
    }
}
</code></pre>
<p>Eigentlich sieht die Übung so aus:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;cstdlib&gt; 

int main() 
{ 
  char Buffer[20]; 

  std::cout &lt;&lt; &quot;Geben Sie eine Zahl ein: &quot; &lt;&lt; std::flush; 
  std::cin.get(Buffer, sizeof(Buffer)); 
  if (std::atoi(Buffer) &lt; 100) 
  { 
    std::cout &lt;&lt; &quot;Sie haben eine Zahl kleiner als 100 eingegeben.&quot; &lt;&lt; std::endl; 
  } 
}
</code></pre>
<p>Aber ich experimentiere gerne und lerne dadurch wesentlich schneller durch die Fehler die ich mache. Aber wie ist es denn richtig? Und, ist dieses atoi wirklich quatsch? Kann man ja auch so machen wie ich jetzt, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1660179</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1660179</guid><dc:creator><![CDATA[Der_Ben81]]></dc:creator><pubDate>Mon, 09 Feb 2009 11:33:17 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler bei Kontrollstruktur on Sun, 08 Feb 2009 20:54:15 GMT]]></title><description><![CDATA[<p>Das ist ziemlicher Quatsch..</p>
<pre><code class="language-cpp">int zahl = 0;
std::cin &gt;&gt; zahl; //einlesen einer zahl
if ( zahl &gt; 200 )
 ...
else
 ...
</code></pre>
<p>Die Eingabe muss noch auf gültigkeit überprüft werden..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1660186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1660186</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sun, 08 Feb 2009 20:54:15 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler bei Kontrollstruktur on Mon, 09 Feb 2009 06:56:41 GMT]]></title><description><![CDATA[<p>Zumal du einen Logikfehler drinne hast.<br />
Ein int-Array hat die möglichkeit mehrere ints an verschiedenen Speicherstellen aufzunehmen. So zum Beispiel</p>
<blockquote>
<p>0. Arraystelle = 0;<br />
1. Arraystelle = 100;<br />
....</p>
</blockquote>
<p>usw.<br />
Das heißt für dich, du müsstest in einer Schleife das Array füllen UND du müsstest in einer Schleife die einzelnen Indizes auf &quot;größer oder kleiner&quot; prüfen. Weiterhin hättest du ein Problem in deiner If-Abfrage</p>
<p>Du sagst,wörtlich:&quot;Wenn Buffer kleiner als 100 ist, dann gib dem User eine Meldung das er eine Zahl eingegeben hat die größer als 100 ist&quot; Das ist aber irgendwie sinnlos <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1660303</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1660303</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Mon, 09 Feb 2009 06:56:41 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler bei Kontrollstruktur on Mon, 09 Feb 2009 07:12:40 GMT]]></title><description><![CDATA[<p>Firefighter schrieb:</p>
<blockquote>
<p>Das heißt für dich, du müsstest in einer Schleife das Array füllen UND du müsstest in einer Schleife die einzelnen Indizes auf &quot;größer oder kleiner&quot; prüfen.</p>
</blockquote>
<p>Na ja, ich glaube das will er ja gar nicht. drakon hat's im Grunde auf den Punkt gebracht. Trotzdem noch ein wenig Erklärung, zur Sicherheit:</p>
<p>In der &quot;Übung&quot; wird ein String (char-Array) eingelesen und der Inhalt dann für den Vergleich in eine Zahl umgewandelt (atoi). In einem String benötigt jede Ziffer der eingegebenen Zahl ein char. Dazu kommt noch die abschließende Null (&quot;12345&quot; ist beispielsweise ein String der Länge 6). Deshalb wurde da einfach mal pauschal ein String/char-Array der Länge 20 angelegt. Du hast die Sache vereinfachen wollen, indem du direkt eine Zahl (int) einliest. Das ist schon sinnvoll, nur dass du ein <strong>Array</strong> of ints gebildet hast, dass 20 Zahlenwerte speichern kann. Du willst nur eine Zahl einlesen. Deshalb musst du es so machen, wie in drakons Beispiel. Ein int reicht also.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1660312</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1660312</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Mon, 09 Feb 2009 07:12:40 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler bei Kontrollstruktur on Mon, 09 Feb 2009 07:14:55 GMT]]></title><description><![CDATA[<p>Ups den Letzen Codeabschnitt habe ich gar nicht mitgelesen. Meine Lösung ist ja nur eine Erweiterung, besser gesagt eine Möglichkeit, sein Problem so zu lösen wie ich meinte es zu Interpretieren. Ansonsten, wenn ich das nochmal lese, ja, da reicht drakons Lösung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1660315</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1660315</guid><dc:creator><![CDATA[Firefighter]]></dc:creator><pubDate>Mon, 09 Feb 2009 07:14:55 GMT</pubDate></item></channel></rss>