<?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[Warum läuft dieses Programm mit Eingabewert nicht gleich Datentyp int????]]></title><description><![CDATA[<p>Hallo, ich habe zum Üben gerade folgende do - while - Schleife programmiert:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

int main()
{
  int counter;
  std::cout &lt;&lt; &quot;Wie viele Hellos?: &quot;;
  std::cin &gt;&gt; counter;
  do
  {
    std::cout &lt;&lt; &quot;Hello!\n&quot;;
    counter--;
  }
  while (counter &gt; 0);

  std::cout &lt;&lt; &quot;counter: &quot; &lt;&lt; counter;
  return 0;
}
</code></pre>
<p>für counter = 2 ist das Resultat:</p>
<p>C:\Dokumente und Einstellungen\Thomas Zettler\cbproject\bodyskip\windows\Release_Build\bodyskip.exe<br />
Wie viele Hellos?: 2<br />
Hello!</p>
<p>Hello!</p>
<p>counter: 0</p>
<p>... das ist erwartungsgemäß.</p>
<p>Für counter = t (nicht Element int / Ganzzahl) erwartete ich zu Übungszwecken einen Computer und / oder Programmabsturz.</p>
<p>Hier aber das unerwartete Ergebnis:</p>
<p>C:\Dokumente und Einstellungen\Thomas Zettler\cbproject\bodyskip\windows\Release_Build\bodyskip.exe<br />
Wie viele Hellos?: t<br />
Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>usw. bis in alle Ewigkeit.</p>
<p>Warum löst &quot;t&quot; nicht Element von int überhaupt eine Schleifenausführung aus? ist t nicht Element von char? ich dachte ich kann nur 1,2, 3, ... , n usw. eingeben.</p>
<p>Bitte um Rätsellösung. bin newbie.</p>
<p>LG kasimirle</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/173155/warum-läuft-dieses-programm-mit-eingabewert-nicht-gleich-datentyp-int</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 04:29:59 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/173155.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Feb 2007 14:16:41 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Warum läuft dieses Programm mit Eingabewert nicht gleich Datentyp int???? on Mon, 12 Feb 2007 14:16:41 GMT]]></title><description><![CDATA[<p>Hallo, ich habe zum Üben gerade folgende do - while - Schleife programmiert:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

int main()
{
  int counter;
  std::cout &lt;&lt; &quot;Wie viele Hellos?: &quot;;
  std::cin &gt;&gt; counter;
  do
  {
    std::cout &lt;&lt; &quot;Hello!\n&quot;;
    counter--;
  }
  while (counter &gt; 0);

  std::cout &lt;&lt; &quot;counter: &quot; &lt;&lt; counter;
  return 0;
}
</code></pre>
<p>für counter = 2 ist das Resultat:</p>
<p>C:\Dokumente und Einstellungen\Thomas Zettler\cbproject\bodyskip\windows\Release_Build\bodyskip.exe<br />
Wie viele Hellos?: 2<br />
Hello!</p>
<p>Hello!</p>
<p>counter: 0</p>
<p>... das ist erwartungsgemäß.</p>
<p>Für counter = t (nicht Element int / Ganzzahl) erwartete ich zu Übungszwecken einen Computer und / oder Programmabsturz.</p>
<p>Hier aber das unerwartete Ergebnis:</p>
<p>C:\Dokumente und Einstellungen\Thomas Zettler\cbproject\bodyskip\windows\Release_Build\bodyskip.exe<br />
Wie viele Hellos?: t<br />
Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>Hello!</p>
<p>usw. bis in alle Ewigkeit.</p>
<p>Warum löst &quot;t&quot; nicht Element von int überhaupt eine Schleifenausführung aus? ist t nicht Element von char? ich dachte ich kann nur 1,2, 3, ... , n usw. eingeben.</p>
<p>Bitte um Rätsellösung. bin newbie.</p>
<p>LG kasimirle</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227422</guid><dc:creator><![CDATA[kasimirle]]></dc:creator><pubDate>Mon, 12 Feb 2007 14:16:41 GMT</pubDate></item><item><title><![CDATA[Reply to Warum läuft dieses Programm mit Eingabewert nicht gleich Datentyp int???? on Mon, 12 Feb 2007 14:21:27 GMT]]></title><description><![CDATA[<p>Das Problem ist dass Du nicht überprüfst, ob die Eingabe einer Zahl erfolgreich war. Wenn Du nämlich keine Zahl eingibst schlägt (cin &gt;&gt; counter) fehl und counter bleibt unverändert. Und da Du counter vorher nicht initialisiert hast, steht da ein beliebiger Wert drin.</p>
<p>D.h. Du hast zwei Möglichkeiten: Resultat der Eingabe abfragen oder counter vorher mit 0 initialisieren.</p>
<pre><code class="language-cpp">if (std::cin &gt;&gt; counter) 
  {
    do
    {
      std::cout &lt;&lt; &quot;Hello!\n&quot;;
      counter--;
    }
    while (counter &gt; 0);
  }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1227427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227427</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Mon, 12 Feb 2007 14:21:27 GMT</pubDate></item><item><title><![CDATA[Reply to Warum läuft dieses Programm mit Eingabewert nicht gleich Datentyp int???? on Mon, 12 Feb 2007 16:26:18 GMT]]></title><description><![CDATA[<p>LordJaxom schrieb:</p>
<blockquote>
<p>...<br />
D.h. Du hast zwei Möglichkeiten: Resultat der Eingabe abfragen oder counter vorher mit 0 initialisieren.</p>
<pre><code class="language-cpp">if (std::cin &gt;&gt; counter) 
  {
    do
    {
      std::cout &lt;&lt; &quot;Hello!\n&quot;;
      counter--;
    }
    while (counter &gt; 0);
  }
</code></pre>
</blockquote>
<p>Wobei in diesem Fall das &quot;Initialisieren mit 0&quot; nur gewünscht arbeitet, wenn man die Schleife von do-while in while-do umbaut.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1227535</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1227535</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Mon, 12 Feb 2007 16:26:18 GMT</pubDate></item></channel></rss>