<?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[Ausdruck der a||b true liefert und für a|b false]]></title><description><![CDATA[<p>Hallo alle zusammen,</p>
<p>ich bereite mich gerade auf Klausuren vor. Dumm, dass es bei uns keinerlei Rekos gibt. Deshalb muss ich mir selbst aufgaben überlegen. Ich hab ein bisschen im Internet geschaut, und ein paar Denkaufgaben zur Programmierung gefunden. Eine davon kann ich leider nicht lösen.</p>
<p>Folgendes:</p>
<p>Kann es einen Ausdruck geben, der für &quot;a||b&quot; true liefert und für &quot;a|b&quot; false? Man darf wohl weitere Variablen zur lösung deklarieren.</p>
<p>Irgendwie fällt mir da nichts ein.</p>
<p>Weiß jemand von euch weiter?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/322053/ausdruck-der-a-b-true-liefert-und-für-a-b-false</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 12:28:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/322053.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 04 Dec 2013 17:10:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:10:58 GMT]]></title><description><![CDATA[<p>Hallo alle zusammen,</p>
<p>ich bereite mich gerade auf Klausuren vor. Dumm, dass es bei uns keinerlei Rekos gibt. Deshalb muss ich mir selbst aufgaben überlegen. Ich hab ein bisschen im Internet geschaut, und ein paar Denkaufgaben zur Programmierung gefunden. Eine davon kann ich leider nicht lösen.</p>
<p>Folgendes:</p>
<p>Kann es einen Ausdruck geben, der für &quot;a||b&quot; true liefert und für &quot;a|b&quot; false? Man darf wohl weitere Variablen zur lösung deklarieren.</p>
<p>Irgendwie fällt mir da nichts ein.</p>
<p>Weiß jemand von euch weiter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369812</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369812</guid><dc:creator><![CDATA[Kekeke]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:10:58 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:20:47 GMT]]></title><description><![CDATA[<p>Vorausgesetzt, a und b sind Integer, dann geht das nicht.<br />
a||b true =&gt; entweder a oder b hat mindestens ein Bit gesetzt =&gt; a|b hat mindestens das Bit von vorher gesetzt =&gt; a|b true.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369816</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369816</guid><dc:creator><![CDATA[proofbycontradiction]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:20:47 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:24:18 GMT]]></title><description><![CDATA[<p>Voraussetzung ist nur, dass das ganze eben ein Ausdruck ist. a und b können dann ja Teilausdrücke sein, die nicht vom Typ int sein müssen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369817</guid><dc:creator><![CDATA[Kekeke]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:24:18 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:28:29 GMT]]></title><description><![CDATA[<p>Kekeke schrieb:</p>
<blockquote>
<p>Voraussetzung ist nur, dass das ganze eben ein Ausdruck ist. a und b können dann ja Teilausdrücke sein, die nicht vom Typ int sein müssen.</p>
</blockquote>
<p>bzw. Das geht ja auch gar nicht vom Typ int, weil || doch Argumente vom Typ Boolean erwartet. Also müssten a und b Ausdrücke bzw. Werte vom Typ Boolean sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369820</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369820</guid><dc:creator><![CDATA[Kekeke]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:28:29 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:35:47 GMT]]></title><description><![CDATA[<p>Wenn es legitime Ausdrücke vom Typ (a)|(b) und (a)||(b) sind, dann geht das wirklich nicht. Wenn a vom Typ bool/char/int/long sein muss und b genauso, dann gilt meine Begründung.</p>
<p>Es gibt noch so dunkle Tricks wie</p>
<pre><code class="language-cpp">#define a 0&amp;&amp;0
#define b 1
  std::cout &lt;&lt; (a|b)  &lt;&lt; '\n'  // 0
            &lt;&lt; (a||b) &lt;&lt; '\n'; // 1
</code></pre>
<p>oder Operatorenüberladung, aber abgesehen davon fällt mir nichts ein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369823</guid><dc:creator><![CDATA[proofbycontradiction]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:35:47 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 17:45:15 GMT]]></title><description><![CDATA[<p>Kekeke schrieb:</p>
<blockquote>
<p>Das geht ja auch gar nicht vom Typ int, weil || doch Argumente vom Typ Boolean erwartet. Also müssten a und b Ausdrücke bzw. Werte vom Typ Boolean sein.</p>
</blockquote>
<p>Falsch, betrachte zum Beispiel</p>
<pre><code>int i = 0;
    if ( i ) // Äquivalent zu if ( i != 0 )
	std::cout &lt;&lt; &quot;Non-zero&quot; &lt;&lt; std::endl;
    else
	std::cout &lt;&lt; &quot;Zero&quot; &lt;&lt; std::endl;
</code></pre>
<p>*Edit<br />
Die Einrückung scheint nicht korrekt zu funktionieren...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369827</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Wed, 04 Dec 2013 17:45:15 GMT</pubDate></item><item><title><![CDATA[Reply to Ausdruck der a||b true liefert und für a|b false on Wed, 04 Dec 2013 20:40:28 GMT]]></title><description><![CDATA[<p>Da hast du's:</p>
<pre><code>class A
{
public:
    bool operator | (const A&amp;) const { return false; }
    bool operator || (const A&amp;) const { return true; }
};
</code></pre>
<p>Bei &amp; und &amp;&amp; geht das sogar mit normalen integern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2369858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2369858</guid><dc:creator><![CDATA[Marthog]]></dc:creator><pubDate>Wed, 04 Dec 2013 20:40:28 GMT</pubDate></item></channel></rss>