<?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[for-schleife]]></title><description><![CDATA[<p>huhu leute</p>
<p>diese schleife läuft nur einmal durch...warum?</p>
<pre><code class="language-cpp">for(double i=0.2; i&lt;=0.3; i+=0.1)
{
    cout &lt;&lt; i;
}
</code></pre>
<p>danke euch</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/190502/for-schleife</link><generator>RSS for Node</generator><lastBuildDate>Fri, 25 Sep 2026 15:26:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/190502.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 23 Aug 2007 13:23:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:23:06 GMT]]></title><description><![CDATA[<p>huhu leute</p>
<p>diese schleife läuft nur einmal durch...warum?</p>
<pre><code class="language-cpp">for(double i=0.2; i&lt;=0.3; i+=0.1)
{
    cout &lt;&lt; i;
}
</code></pre>
<p>danke euch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350489</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350489</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:23:06 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:25:38 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Wie oft sollte sie denn deiner Meinung nach durchlaufen?</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350493</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:25:38 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:26:22 GMT]]></title><description><![CDATA[<p>Ich würde mal auf die (allseits bekannten) Rundungsfehler bei Gleitkommazahlen tippen - 0.2+0.1 ist offenbar minimal größer als 0.3</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350495</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:26:22 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:26:56 GMT]]></title><description><![CDATA[<p>Vermutlich ist 0.2 + 0.1 &gt; 0.3 - Fließkommazahlen können aufgrund ihrer Natur nie völlig exakt dargestellt werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350498</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:26:56 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:31:16 GMT]]></title><description><![CDATA[<p>huhu<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/7971">@akari</a></p>
<p>ich denke sie sollte 2x durchlaufen</p>
<p>ersten durchlauf ist i=0.2<br />
im 2 druchlauf 0.3.... und 0.3 ist wohl &lt;=0.3</p>
<p>oder?^^</p>
<p>mfg dweb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350503</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:31:16 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:32:40 GMT]]></title><description><![CDATA[<p>Ne läuft nur einmal durch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350505</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350505</guid><dc:creator><![CDATA[dasbaum]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:32:40 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:33:20 GMT]]></title><description><![CDATA[<p>wenn ich allerdings</p>
<pre><code class="language-cpp">for(double i=0.2; i&lt;=0.3f; i+=0.1)
{
    cout &lt;&lt; i;
}
</code></pre>
<p>funkioniert es... komisch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350506</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:33:20 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:34:11 GMT]]></title><description><![CDATA[<p>Wenn du genaue Werte haben willst, solltest du keine Gleitkommazahlen verwenden - da schleichen sich schneller Rundungsfehler ein als dir lieb sein kann (was dir hier aber auch schon zwei User mitgeteilt haben).</p>
<p>(der Computer rechnet binär und mit einer endlichen Stellenzahl - da kann er nicht einmal den Wert 0.1 exakt darstellen)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350508</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350508</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:34:11 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:34:51 GMT]]></title><description><![CDATA[<p>ja aber läuft nur einmal durch <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/1350509</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350509</guid><dc:creator><![CDATA[diebaum]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:34:51 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:36:41 GMT]]></title><description><![CDATA[<p>ok dann nehm ich das mal so hin</p>
<p>danke euch <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/1350510</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350510</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:36:41 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:41:07 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/10318">@CStoll</a>: fließkommazahlen sind ungenau bei solchen dingen, aber wieso eigentlich?</p>
<p>0.1 + 0.2 = 0.3</p>
<p>oder noch mit weiteren Nachkommastellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350514</guid><dc:creator><![CDATA[DerBaum]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:41:07 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:47:00 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Die Rechnung die du da stehen hast bezieht sich ja auch auf Festkommazahlen.</p>
<p>Lies dir mal den Aufbau von Fließkommazahlen durch, du wirst feststellen das diese weit komplizierter als Integers oder Festkommazahlen sind (wobei es in C++ für letzteres keinen eigenen Datentyp gibt)</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350520</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:47:00 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 13:47:42 GMT]]></title><description><![CDATA[<p>Das habe ich vorhin doch schon geschrieben - der Computer rechnet nicht mit Dezimalzahlen, sondern mit Binärzahlen und da ist 0.1 eine unendliche (periodische) Binärzahl, die aus Platzgründen irgendwo abegschnitten werden muß - darum hast du im Speicher keine 0.1, sondern 0.100000015 (oder etwas ähnliches) stehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350521</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350521</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Thu, 23 Aug 2007 13:47:42 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 14:00:21 GMT]]></title><description><![CDATA[<p>fliesskommazahlen werden im binaerformat gespeichert, der Computer speichert ein Vorzeichenbit, dann einen exponenten und eine sogenannte mantisse. In zehnerschreibweise wuerde dann 0,1 * 10^0 aus der 0,1. In Biaerdarstellung saehe das anders aus:</p>
<p>Die negativen Zweierpotenzen sind 0.5, 0.25, 0.125, 0.0625, 0.03125 usw.<br />
0.1 wuerde dann dargestellt als</p>
<pre><code>vorzeichen : 0 //positiv
exponent : -3 //da die ersten drei negativen potenzen nicht in 0.1 vorkommen
mantisse:

1 // 0.0625
1 // 0.03125               -&gt; Summe 0.09375
0 // 0.015625 passt nicht
0 // 0.0078125 passt nicht
1 // 0.00390625            -&gt; Summe 0.09765625
1 // 0.001953125           -&gt; Summe 0.099605375
.
.
.
</code></pre>
<p>Du siehst, unsere schoenen dezimalen Zahlen mit einer Nachkommastelle koennen im zweierbereich unheimlich krumm sein und nie ganz angenaehert werden. Bei additionen kommen Rundungsfehler hinzu, und deshalb ist <code>0.1 + 0.2 != 0.3</code> <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/1350532</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350532</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 23 Aug 2007 14:00:21 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 14:17:11 GMT]]></title><description><![CDATA[<p>jo und deswegen muss er &gt;= in die Forschleife reintun <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/1350545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350545</guid><dc:creator><![CDATA[DieBaum]]></dc:creator><pubDate>Thu, 23 Aug 2007 14:17:11 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 14:38:34 GMT]]></title><description><![CDATA[<p>bringt auch nichts. Du kannst nie genau wissen, ob die Zahl die du durch die Additionen produzierst, intern nun groessewr oder kleiner sind als das was du erwartest. 0.1 + 0.2 mag groesser sein als 0.3, aber 0.2 + 0.2 koennte kleiner sein als 0.4, waerend wiederum 0.1+0.3 groesser sein ist als 0.4 - das Verhalten ist fuer den otto-normal-hacker nicht vorhersehbar, es sei denn du weisst exakt, wie dein Compiler die Dinger intern verwaltet und rechnest es jedesmal vorher aus. Da ist der Aufwand, das Ganze mit ints zu bewerkstelligen, deutlich geringer. Schlimmer noch, da der standard nicht genau festlegt, wie die Fliesskommazahlen intern gespeichert werden, ist das Ergebnis derartiger Vergleiche nicht festgelegt und daher das Verhalten deiner Schleife nicht definiert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1350558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350558</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 23 Aug 2007 14:38:34 GMT</pubDate></item><item><title><![CDATA[Reply to for-schleife on Thu, 23 Aug 2007 15:25:14 GMT]]></title><description><![CDATA[<p><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="🙂"
    /> nun wird mir einiges klarer, dankö <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/1350599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1350599</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Thu, 23 Aug 2007 15:25:14 GMT</pubDate></item></channel></rss>