<?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[if else und Toleranz]]></title><description><![CDATA[<p>Das Programm lief gut und hatte kein Problem, bis ich die geschweiften Klammern im Zeilenbereich 33 bis 60 verändert habe (Ausnahmsweise einmal keine Sicherung). Könnt ihr mir bitte helfen.Die Klammern wider richtig zu setzen.<br />
Danke</p>
<pre><code>#include&lt;iostream&gt;

using namespace std;

int main()
{
double a =0.0; // Messwert a
double b =0.0; // Messwert b
double t =5.0; // Toleranz (Nennmaß) von 5.0, zwichen a+b
double d =0.0; // Differens von a +b

while (cin&gt;&gt; a &gt;&gt;b )

	if((a&lt;b) &amp;&amp; (d=b-a))
	{
	 cout &lt;&lt;b &lt;&lt;&quot; B ist groesser A &quot;&lt;&lt;a&lt;&lt;&quot; Differens: &quot;&lt;&lt; d &lt;&lt;'\n';

					   if (d&lt;t)
						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}

						  else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

   	}

		else

			if((a&gt;b) &amp;&amp; (d=a-b))
			{
				cout &lt;&lt;a &lt;&lt;&quot; A ist groesser B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';
			}

			else if((a==b)	&amp;&amp; (d=a-b))

			{
					   if (d&lt;t)

						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}

					    else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

			}

//-- Halt Routine --
getchar();
return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/330052/if-else-und-toleranz</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 14:39:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330052.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 19 Dec 2014 19:52:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 19:52:47 GMT]]></title><description><![CDATA[<p>Das Programm lief gut und hatte kein Problem, bis ich die geschweiften Klammern im Zeilenbereich 33 bis 60 verändert habe (Ausnahmsweise einmal keine Sicherung). Könnt ihr mir bitte helfen.Die Klammern wider richtig zu setzen.<br />
Danke</p>
<pre><code>#include&lt;iostream&gt;

using namespace std;

int main()
{
double a =0.0; // Messwert a
double b =0.0; // Messwert b
double t =5.0; // Toleranz (Nennmaß) von 5.0, zwichen a+b
double d =0.0; // Differens von a +b

while (cin&gt;&gt; a &gt;&gt;b )

	if((a&lt;b) &amp;&amp; (d=b-a))
	{
	 cout &lt;&lt;b &lt;&lt;&quot; B ist groesser A &quot;&lt;&lt;a&lt;&lt;&quot; Differens: &quot;&lt;&lt; d &lt;&lt;'\n';

					   if (d&lt;t)
						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}

						  else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

   	}

		else

			if((a&gt;b) &amp;&amp; (d=a-b))
			{
				cout &lt;&lt;a &lt;&lt;&quot; A ist groesser B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';
			}

			else if((a==b)	&amp;&amp; (d=a-b))

			{
					   if (d&lt;t)

						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}

					    else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

			}

//-- Halt Routine --
getchar();
return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2433725</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433725</guid><dc:creator><![CDATA[juhu123]]></dc:creator><pubDate>Fri, 19 Dec 2014 19:52:47 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 20:44:33 GMT]]></title><description><![CDATA[<p>Du hast die Mengenklammern von der Schleife vergessen und als Tipp: Du hast ein<br />
paar Rechtschreibfehler in deinen Kommentaren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433733</guid><dc:creator><![CDATA[Asyl-Dämon]]></dc:creator><pubDate>Fri, 19 Dec 2014 20:44:33 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 21:23:55 GMT]]></title><description><![CDATA[<pre><code>#include&lt;iostream&gt;

using namespace std;

int main()
{
  double a =0.0; // Messwert a
  double b =0.0; // Messwert b
  double t =5.0; // Toleranz (Nennmaß) von 5.0, zwichen a+b
  double d =0.0; // Differens von a +b

  while (cin&gt;&gt; a &gt;&gt;b )
  {

    if((a&lt;b) &amp;&amp; (d=b-a))
      {
        cout &lt;&lt;b &lt;&lt;&quot; B ist groesser A &quot;&lt;&lt;a&lt;&lt;&quot; Differens: &quot;&lt;&lt; d &lt;&lt;'\n';

        if (d&lt;t)
          {
            cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
          }

        else if (d&gt;t)
          {
            cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
          }

      }

    else

      if((a&gt;b) &amp;&amp; (d=a-b))
        {
          cout &lt;&lt;a &lt;&lt;&quot; A ist groesser B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';
          if (d&lt;t)

            {
              cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
            }

          else if (d&gt;t)
            {
              cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
            }

        }
      else if((a==b)  &amp;&amp; (d=a-b))

        {
          // Was auch immer dann geschehen soll
        }

  }
  //-- Halt Routine --
  getchar();
  return 0;
}
</code></pre>
<p>Anmerkungen:<br />
-Kauf dir mal 'nen Duden und lies ihn!<br />
-Das mit der Zuweisung im if ist kein guter Stil, da schwer zu lesen.<br />
-Auch schwer zu lesen ist dein Stil, wo du Leerzeichen setzt und wo nicht.<br />
-Man könnte auch alles kürzen zu</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;cmath&gt; 
using namespace std;

int main()
{
  const double t = 5.0; // Toleranz (Nennmaß) von 5.0

  double a, b; 
  while (cin &gt;&gt; a &gt;&gt; b)
    { 
      if(a &lt; b)
         cout &lt;&lt; b &lt;&lt; &quot; B ist größer als A &quot; &lt;&lt; a;
      else if (a &gt; b)
         cout &lt;&lt; a &lt;&lt; &quot; A ist größer als B &quot; &lt;&lt; b;
      else if (a == b)
         cout &lt;&lt; a &lt;&lt; &quot; A ist gleich B &quot; &lt;&lt; b;

      double d = fabs(a - b); 
      cout &lt;&lt; &quot; Differenz: &quot; &lt;&lt; d &lt;&lt; '\n';

      if (d &lt;= t)
        cout &lt;&lt; d &lt;&lt; &quot;= OK Beide Werte liegen in der Toleranz von &quot; &lt;&lt; t &lt;&lt; '\n';
      else
        cout &lt;&lt; d &lt;&lt; &quot;= SCHROTT Werte liegen über der Toleranz von &quot; &lt;&lt; t &lt;&lt; '\n';
    }
}
</code></pre>
<p>Was nicht nur kürzer, sondern auch richtiger ist. Denn bei deinem jetzigen Code hast du so viele Einzelfälle betrachtet, dass du ein paar vergessen hast (zum Beispiel Differenz gleich Toleranz). Dabei ist das alles auf wenige Fälle rückführbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433734</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433734</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 19 Dec 2014 21:23:55 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 21:08:32 GMT]]></title><description><![CDATA[<p>[quote=&quot;Asyl-Dämon&quot;]Du hast die Mengenklammern von der Schleife vergessen und als Tipp: Du hast ein paar Rechtschreibfehler in deinen Kommentaren.[/quote] Wo muss die Mengenklammer hin. Bitte mit Nase draufstoßen, stehe auf der Leitung. Die anderen Lössunge sind sehr gut, kommen nächste Woche dran.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433741</guid><dc:creator><![CDATA[juhu123]]></dc:creator><pubDate>Fri, 19 Dec 2014 21:08:32 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 21:20:49 GMT]]></title><description><![CDATA[<pre><code>while(Bedingung){

//Der Code

}
</code></pre>
<p>Alles was sich in der Schleife wiederholt muss zwischen zwei geschweiften Klammern stehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433744</guid><dc:creator><![CDATA[Asyl-Dämon]]></dc:creator><pubDate>Fri, 19 Dec 2014 21:20:49 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 21:54:48 GMT]]></title><description><![CDATA[<p>Asyl-Dämon schrieb:</p>
<blockquote>
<pre><code>while(Bedingung){

//Der Code

}
</code></pre>
<p>Alles was sich in der Schleife wiederholt muss zwischen zwei geschweiften Klammern stehen.</p>
</blockquote>
<p>Das ist falsch, wenn der Schleifenrumpf nur aus 1 Befehl besteht, dürfen die Klammern entfallen.</p>
<p>MFG Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433752</guid><dc:creator><![CDATA[mgaeckler]]></dc:creator><pubDate>Fri, 19 Dec 2014 21:54:48 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 22:18:37 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/24458">@mgaeckler</a><br />
Jetzt wo du's sagst, sehe ich, dass es nur 1 Befehl ist</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433754</guid><dc:creator><![CDATA[Asyl-Dämon]]></dc:creator><pubDate>Fri, 19 Dec 2014 22:18:37 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 23:03:58 GMT]]></title><description><![CDATA[<p>Wenn dieser eine Ausdruck über 50 Zeilen geht, ist es vielleicht trotzdem eine gute Idee, da ein paar Klammern zu setzen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433759</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433759</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 19 Dec 2014 23:03:58 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Fri, 19 Dec 2014 23:16:05 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Wenn dieser eine Ausdruck über 50 Zeilen geht, ist es vielleicht trotzdem eine gute Idee, da ein paar Klammern zu setzen...</p>
</blockquote>
<p>Das stimmt natürlich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433761</guid><dc:creator><![CDATA[mgaeckler]]></dc:creator><pubDate>Fri, 19 Dec 2014 23:16:05 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sat, 20 Dec 2014 05:10:54 GMT]]></title><description><![CDATA[<p>Es läuft fast<br />
Warum wird Zeile 44 nicht aus gegeben<br />
cout &lt;&lt;a &lt;&lt;&quot; A ist gleich B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';</p>
<p>ich weiß das der Code nicht gut ist aber.....</p>
<pre><code>#include&lt;iostream&gt;

using namespace std;

int main()
{
double a =0.0; // Messwert a
double b =0.0; // Messwert b
double t =5.0; // Toleranz (Nennmaß) von 5.0, zwichen a+b
double d =0.0; // Differens von a +b

while (cin&gt;&gt; a &gt;&gt;b )

	if((a&lt;b) &amp;&amp; (d=b-a))
	{
	 cout &lt;&lt;b &lt;&lt;&quot; B ist groesser A &quot;&lt;&lt;a&lt;&lt;&quot; Differens: &quot;&lt;&lt; d &lt;&lt;'\n';

		//	{
					   if (d&lt;t)
						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}
						  else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

		//	}

   	}

		else
		{
			if((a&gt;b) &amp;&amp; (d=a-b))
			{
			 cout &lt;&lt;a &lt;&lt;&quot; A ist groesser B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';
			}

			else if((a==b)&amp;&amp; (d=a-b))

			   { 
				cout &lt;&lt;a &lt;&lt;&quot; A ist gleich B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';
			   }

					   if (d&lt;t)
						{
						 cout &lt;&lt;d &lt;&lt;&quot; OK beide Werte ligen in der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						}
						  else if (d&gt;t)
						  {
						   cout &lt;&lt;d &lt;&lt;&quot;= SCHROTT Werte ligen ueber der Toleranz von &quot;&lt;&lt;t &lt;&lt;'\n';
						  }

		}

//-- Halt Routine --
getchar();
return 0;
}
</code></pre>
<p>[code=&quot;cli&quot;]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433786</guid><dc:creator><![CDATA[juhu123]]></dc:creator><pubDate>Sat, 20 Dec 2014 05:10:54 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sat, 20 Dec 2014 06:48:15 GMT]]></title><description><![CDATA[<p>juhu123 schrieb:</p>
<blockquote>
<p>ich weiß das der Code nicht gut ist aber.....</p>
</blockquote>
<p>Nicht &quot;aber&quot;, sondern &quot;deshalb&quot;. Wahrscheinlich kommt der Ausführungsfluss niemals bei der Anweisung an. Denn Code wird nicht irgendwie magisch übersprungen. Der Computer macht ganz genau das was du sagst. Und wenn da irgendein Chaos aus if, else und geschweiften Klammern steht, dann findet er den Weg durch dieses Labyrinth. Die Frage ist, ist dies der Weg, den du dir selber vorgestellt hast, als du das Programm geschrieben hast? Wahrscheinlich nicht, denn der Code ist ungeheuer unübersichtlich formatiert und daher schwer nachvollziehbar.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433790</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 20 Dec 2014 06:48:15 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sat, 20 Dec 2014 07:14:36 GMT]]></title><description><![CDATA[<p>OK, einmal Mülltonne und komplett neu. Schönes Wochenende</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433793</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433793</guid><dc:creator><![CDATA[juhu123]]></dc:creator><pubDate>Sat, 20 Dec 2014 07:14:36 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sat, 20 Dec 2014 07:24:40 GMT]]></title><description><![CDATA[<p>Viele Editoren haben automatische Codeeinrückung. Und Anzeige, welches Klammerpaar wo endet. Beides wäre sicherlich sehr hilfreich bei deinem Schreibstil. Versuch mal raus zu finden, ob du diese Features zur Verfügung hast<sup>*</sup> und wie du sie benutzt.</p>
<p><sup>*</sup>: Und falls nicht, besorg dir besseres Werkzeug.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433796</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433796</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 20 Dec 2014 07:24:40 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sat, 20 Dec 2014 08:28:47 GMT]]></title><description><![CDATA[<p>juhu123 schrieb:</p>
<blockquote>
<p>Warum wird Zeile 44 nicht aus gegeben<br />
cout &lt;&lt;a &lt;&lt;&quot; A ist gleich B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';</p>
</blockquote>
<p>Weil du davor <em>if((a==b)&amp;&amp; (d=a-b))</em> hast.</p>
<p>Wenn a==b wahr ist, dann kommt für d halt 0 raus. Das ist aber unwahr.</p>
<p><em>wahr &amp;&amp; unwahr</em> ist <em>unwahr</em>. Somit wird der if-Zweig nicht ausgeführt.</p>
<p>Ein andere Schwachstelle ist noch die Gleichheit von Fließkommawerten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433804</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433804</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Sat, 20 Dec 2014 08:28:47 GMT</pubDate></item><item><title><![CDATA[Reply to if else und Toleranz on Sun, 21 Dec 2014 07:38:43 GMT]]></title><description><![CDATA[<p>DirkB schrieb:</p>
<blockquote>
<p>juhu123 schrieb:</p>
<blockquote>
<p>Warum wird Zeile 44 nicht aus gegeben<br />
cout &lt;&lt;a &lt;&lt;&quot; A ist gleich B &quot;&lt;&lt;b &lt;&lt;&quot; Differens: &quot;&lt;&lt; d&lt;&lt;'\n';</p>
</blockquote>
<p>Weil du davor <em>if((a==b)&amp;&amp; (d=a-b))</em> hast.</p>
<p>Wenn a==b wahr ist, dann kommt für d halt 0 raus. Das ist aber unwahr.</p>
<p><em>wahr &amp;&amp; unwahr</em> ist <em>unwahr</em>. Somit wird der if-Zweig nicht ausgeführt.</p>
<p>Ein andere Schwachstelle ist noch die Gleichheit von Fließkommawerten.</p>
</blockquote>
<p>Vielen Dank, es läuft. Ich werde aber trotzdem alles überarbeiten.<br />
Schönes Wochenende</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2433950</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2433950</guid><dc:creator><![CDATA[juhu123]]></dc:creator><pubDate>Sun, 21 Dec 2014 07:38:43 GMT</pubDate></item></channel></rss>