<?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[Programm fehler nicht zu finden]]></title><description><![CDATA[<p>Also als erstes mal meinen code</p>
<pre><code>// includes
#include &lt;iostream&gt;

//namespace

using namespace std;

//programmierung
int main()
{
	//variablen
	char leben = 'A';

	//programmierung

	cout &lt;&lt; &quot;Willkommen zum Spiel!&quot; &lt;&lt; endl &lt;&lt; &quot;Deine Leben betragen &quot; &lt;&lt; leben &lt;&lt; endl;
	cin &gt;&gt; leben;

	//Gegenalternative
	if ((leben == 'a') || (leben == 'A')){
	}
	else{
		return 0;
	}

	//Alternativ

		/*switch (leben)
		{
			case ('a'):
				cout &lt;&lt; &quot;test&quot; &lt;&lt; endl;
				cin &gt;&gt; leben;
			break;
			case ('A'):
				cout &lt;&lt; &quot;test&quot; &lt;&lt; endl;
				cin &gt;&gt; leben;
			break;
			default:
				return 0;
		}*/

	while ((leben == 'a') || (leben == 'A'))
	{
		cout &lt;&lt; &quot;Leben ist immernoch A/a&quot; &lt;&lt; endl;
		cin &gt;&gt; leben;
	}
	do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while (leben != 'a' || leben != 'A');
	return 0;

}
</code></pre>
<p>Mein Problem hier liegt nur in dem unterem Bereich also diesem Hier!</p>
<pre><code>do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while (leben != 'a' || leben != 'A');
	return 0;
</code></pre>
<p>Mein gedanke das Programm soll beendet werden durch das Klicken der a oder der A Taste jedoch scheint die do while schleife egal was man drückt fort zu laufen muss der while befehl anders geschrieben werden? Bereits versucht habe ich es z.B. schon so!</p>
<pre><code>do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while ((leben != 'a') || (leben != 'A'));
	return 0;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/330142/programm-fehler-nicht-zu-finden</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 14:39:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330142.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 23 Dec 2014 23:08:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Programm fehler nicht zu finden on Tue, 23 Dec 2014 23:08:07 GMT]]></title><description><![CDATA[<p>Also als erstes mal meinen code</p>
<pre><code>// includes
#include &lt;iostream&gt;

//namespace

using namespace std;

//programmierung
int main()
{
	//variablen
	char leben = 'A';

	//programmierung

	cout &lt;&lt; &quot;Willkommen zum Spiel!&quot; &lt;&lt; endl &lt;&lt; &quot;Deine Leben betragen &quot; &lt;&lt; leben &lt;&lt; endl;
	cin &gt;&gt; leben;

	//Gegenalternative
	if ((leben == 'a') || (leben == 'A')){
	}
	else{
		return 0;
	}

	//Alternativ

		/*switch (leben)
		{
			case ('a'):
				cout &lt;&lt; &quot;test&quot; &lt;&lt; endl;
				cin &gt;&gt; leben;
			break;
			case ('A'):
				cout &lt;&lt; &quot;test&quot; &lt;&lt; endl;
				cin &gt;&gt; leben;
			break;
			default:
				return 0;
		}*/

	while ((leben == 'a') || (leben == 'A'))
	{
		cout &lt;&lt; &quot;Leben ist immernoch A/a&quot; &lt;&lt; endl;
		cin &gt;&gt; leben;
	}
	do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while (leben != 'a' || leben != 'A');
	return 0;

}
</code></pre>
<p>Mein Problem hier liegt nur in dem unterem Bereich also diesem Hier!</p>
<pre><code>do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while (leben != 'a' || leben != 'A');
	return 0;
</code></pre>
<p>Mein gedanke das Programm soll beendet werden durch das Klicken der a oder der A Taste jedoch scheint die do while schleife egal was man drückt fort zu laufen muss der while befehl anders geschrieben werden? Bereits versucht habe ich es z.B. schon so!</p>
<pre><code>do
		{
			cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;
			cin &gt;&gt; leben;
		}while ((leben != 'a') || (leben != 'A'));
	return 0;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2434478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434478</guid><dc:creator><![CDATA[james5300]]></dc:creator><pubDate>Tue, 23 Dec 2014 23:08:07 GMT</pubDate></item><item><title><![CDATA[Reply to Programm fehler nicht zu finden on Tue, 23 Dec 2014 23:17:24 GMT]]></title><description><![CDATA[<p>Die Schleife läuft <strong>so lange, wie</strong> <code>leben</code> ungleich <code>'a'</code> oder <code>leben</code> ungleich <code>'A'</code> . Überleg dir mal, wann diese Bedingung jemals unwahr wird. Was passiert beispielsweise, wenn <code>leben</code> gleich <code>'a'</code> ist?</p>
<p>PS: Deine Zeilen 21-25: Ist das deine Art das logische Konzept &quot;NICHT&quot; programmtechnisch auszudrücken?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2434479</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434479</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 23 Dec 2014 23:17:24 GMT</pubDate></item><item><title><![CDATA[Reply to Programm fehler nicht zu finden on Wed, 24 Dec 2014 00:15:21 GMT]]></title><description><![CDATA[<p>Der Ausdruck ist immer true, sodass die Schleife ewig laufen wird.</p>
<p>Beispielsweise</p>
<p>Wenn leben = a ist,</p>
<p>ist der Ausdruck im Schleifenkopf:<br />
while(false || true),<br />
Damit die Schleife den Wert false im Kopf hat und damit abbricht,<br />
müssen beide Ausdrücke (leben != 'a') und (leben != 'A') den Wert false haben.</p>
<p>Ich habe es folgendermaßen gelößt.</p>
<p>do<br />
{<br />
cout &lt;&lt; &quot;Um weiter zu Spielen setze die Leben zur&amp;aueck auf A/a&quot; &lt;&lt; endl;<br />
cin &gt;&gt; leben;<br />
}while (!(leben == 'a' || leben == 'A'));<br />
return 0;</p>
<p>Betrachten wir zuerst den Wert der inneren Klammer :<br />
(leben == 'a' || leben == 'A')</p>
<p>Wenn Leben den Wert a bzw. A hat, sieht der Ausdruck folgendermaßen aus.<br />
(true || false) bzw (false || true)</p>
<p>Wenn aber der Wert von leben = b ist, sieht der Ausdruck so aus:<br />
(false || false)</p>
<p>Weil wir den || Operator (ODER-Operator) nehmen, ist der gesamte Wert der inneren Klammer nur false,<br />
wenn beider Ausdrücke false ist. Solbald auch nur einer von beiden true ist,<br />
ist der ausgangswert der inneren Klammer auch true.</p>
<p>Deswegen habe ich das ganze noch einmal in Klammer gesetzt und mit einem Negationsoperator versehen, sodas die ausgangswerte umgekehrt werden</p>
<p>Fazit.<br />
Wenn leben = a oder A ist, ist die innere Klammer true. Wegen des negationsoperators aber nachher in der äußeren<br />
Klammer false. Deswege bricht die Schleife dann Ab. Wenn leben = b oder c ist, ist der Wert der inneren Klammer<br />
false und in der äußeren Klammer wegen des negationsoperators true. Deshalb bricht die Schleife dann NICHT ab.</p>
<p>Sorry, wenn ich etwas zu ausführlich war.<br />
Bitte korigiert mich, wenn ich falsch liege.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2434488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2434488</guid><dc:creator><![CDATA[Sebastian Müller]]></dc:creator><pubDate>Wed, 24 Dec 2014 00:15:21 GMT</pubDate></item></channel></rss>