<?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 funktioniert nicht.]]></title><description><![CDATA[<p>Hallo, ich habe gerade angefangen C++ zu lernen. Ich werde es so machen, dass ich mein Projekt immer weiter erweitern werde. Es geht um ein Programm, dass dir eine Matheaufgabe stellt und deine Antwort wird dann ausgewertet. Später will ich noch Punkte einbauen, die mittels gebrauchter Zeit und der Schwierigkeit der Aufgabe berechnet werden und wenn man ganz gut ist, sollen die Aufgaben dementsprechend schwerer werden bzw. leichter. Highscore und bla bla... kommt auch. Find ich eigentlich ganz spannend aber ich hänge gerade bei IF fest. Er sagt immer es ist richtig aber sieht es selbst:</p>
<pre><code>#include &lt;iostream.h&gt;
char zahl1;
char zahl2;
char entry;
char points;

int ergebniss(int z1,int z2, int ent) {
    if (ent=z1+z2) {printf(&quot;Richtige Antwort!\n&quot;);std::cin.ignore(42,'\n');} 
    else {printf(&quot;Falsche Antwort. Sie lautet %d.\n&quot;,z1+z2);std::cin.ignore(42, '\n');};
}
int main(void)
{
    aufgabe:
    std::cin.ignore(42, '\n');
    srand((unsigned)time(NULL));
    zahl1 = rand() % 10 + 1;
    zahl2 = rand() % 10 + 1;
    printf(&quot;Was ist %d + %d?\n&quot;,zahl1,zahl2);
    std::cin.get(entry);
    ergebniss(zahl1,zahl2,entry);
    goto aufgabe;
    return 0;
}
</code></pre>
<p>Als Programm benutz ich Dev-C++ 4.9.9.2.</p>
<p>Bitte um Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/313583/if-funktioniert-nicht</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 03:54:55 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/313583.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Feb 2013 22:49:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to If funktioniert nicht. on Mon, 04 Feb 2013 22:49:48 GMT]]></title><description><![CDATA[<p>Hallo, ich habe gerade angefangen C++ zu lernen. Ich werde es so machen, dass ich mein Projekt immer weiter erweitern werde. Es geht um ein Programm, dass dir eine Matheaufgabe stellt und deine Antwort wird dann ausgewertet. Später will ich noch Punkte einbauen, die mittels gebrauchter Zeit und der Schwierigkeit der Aufgabe berechnet werden und wenn man ganz gut ist, sollen die Aufgaben dementsprechend schwerer werden bzw. leichter. Highscore und bla bla... kommt auch. Find ich eigentlich ganz spannend aber ich hänge gerade bei IF fest. Er sagt immer es ist richtig aber sieht es selbst:</p>
<pre><code>#include &lt;iostream.h&gt;
char zahl1;
char zahl2;
char entry;
char points;

int ergebniss(int z1,int z2, int ent) {
    if (ent=z1+z2) {printf(&quot;Richtige Antwort!\n&quot;);std::cin.ignore(42,'\n');} 
    else {printf(&quot;Falsche Antwort. Sie lautet %d.\n&quot;,z1+z2);std::cin.ignore(42, '\n');};
}
int main(void)
{
    aufgabe:
    std::cin.ignore(42, '\n');
    srand((unsigned)time(NULL));
    zahl1 = rand() % 10 + 1;
    zahl2 = rand() % 10 + 1;
    printf(&quot;Was ist %d + %d?\n&quot;,zahl1,zahl2);
    std::cin.get(entry);
    ergebniss(zahl1,zahl2,entry);
    goto aufgabe;
    return 0;
}
</code></pre>
<p>Als Programm benutz ich Dev-C++ 4.9.9.2.</p>
<p>Bitte um Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2296087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2296087</guid><dc:creator><![CDATA[Maxim1234]]></dc:creator><pubDate>Mon, 04 Feb 2013 22:49:48 GMT</pubDate></item><item><title><![CDATA[Reply to If funktioniert nicht. on Mon, 04 Feb 2013 22:53:53 GMT]]></title><description><![CDATA[<p>Du benutzt den Zuweisungsoperator in deinem if, nicht der Vergleichsoperator (==)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2296088</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2296088</guid><dc:creator><![CDATA[asdfasd]]></dc:creator><pubDate>Mon, 04 Feb 2013 22:53:53 GMT</pubDate></item><item><title><![CDATA[Reply to If funktioniert nicht. on Mon, 04 Feb 2013 23:12:54 GMT]]></title><description><![CDATA[<p>Noch ein paar Tipps:<br />
- meide globale Variablen<br />
- verwende keine C-Funktionen in deinem Code (vorerst)<br />
- es heißt nicht <code>#include &lt;iostream.h&gt;</code> sondern <code>#include &lt;iostream&gt;</code><br />
- versuch nicht an Zeilen zu sparen - darunter leidet die Lesbarkeit deines Codes (damit meine ich z.B. mehrere Anweisungen in einer Zeile in deiner Funktion)<br />
- lösche goto aus deinem Gedächtnis - das ist ein Überbleibsel welches bei größeren Programmen zum <a href="https://www.mllrsohn.com/allfacebook/images/spaghetti-code.jpg" rel="nofollow">Spaghetti-Code</a> führt. Dafür hast du verschiedene Schleifen.<br />
- ergebniss() gibt keinen Wert zurück - entweder zu void ändern oder was zurückgeben.<br />
- Ergebnis schreibt man im Nominativ mit einem s</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2296089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2296089</guid><dc:creator><![CDATA[*Rewind*]]></dc:creator><pubDate>Mon, 04 Feb 2013 23:12:54 GMT</pubDate></item><item><title><![CDATA[Reply to If funktioniert nicht. on Tue, 05 Feb 2013 09:40:03 GMT]]></title><description><![CDATA[<p>Maxim1234 schrieb:</p>
<blockquote>
<p>Hallo, ich habe gerade angefangen C++ zu lernen.</p>
</blockquote>
<p>Ok. Dann tu dir einen gefallen und schnapp dir ein <em>gescheites</em> C++ Buch. Nicht, dass du dir noch mehr schlechte Sachen (neben iostream.h, goto, printf) irgendwo abguckst. Gescheite Bücher heißen &quot;C++ Primer&quot; (ohne &quot;Plus&quot; im Titel!), &quot;Accelerated C++&quot;, &quot;Der C++ Programmierer&quot;, &quot;The C++ Programming Language&quot;, &quot;Programming - Principles and Practice Using C++&quot;. Vermeide Bücher mit Titeln wie &quot;von A bis Z&quot;, &quot;in 21 Tagen&quot; oder &quot;Sowieso Plus&quot;.</p>
<p>Merke dir auch, dass <code>char</code> für ein einzelnes <em>Zeichen</em> da ist. Willst du mit Ganzzahlen hantieren, bietet sich erst mal <code>int</code> an. Die iostreams machen diesen Unterschied. Das solltest du wissen. Angenommen, auf deiner Plattform kommt ASCII als excecution character set zu Einsatz, dann wird dir cin.get bei Eingabe einer 1 den Wert 49 in die Char-Variable reinschreiben und bei der Eingabe von A den Wert 65. Ich denke nicht, dass du dieses Verhalten haben willst. Ich denke eher, dass du so etwas haben willst:</p>
<pre><code class="language-cpp">int x;
cin &gt;&gt; x;
</code></pre>
<p>Hier wird die eingegebene <em>Zeichen</em>kette bis zum nächsten Whitespace eingelesen, als dezimalkodierte Ganzzahl betrachtet und dementsprechend konvertiert. Der Wert dieser Zahl steht dann in der Variablen x.</p>
<p>Maxim1234 schrieb:</p>
<blockquote>
<p>Als Programm benutz ich Dev-C++ 4.9.9.2.</p>
</blockquote>
<p>Soweit ich weiß, ist das Uralt und wird nicht mehr gepflegt. Wenn du einen Editor mit Projektverwaltung haben willst, der auch auf MinGW als Compiler aufsetzen kann, kannst du auch Code::Blocks verwenden. Allerdings würde ich inzwischen Visual C++ Express für Windows empfehlen. Das gibt's auch für lau und funktioniert wenigstens mit dem Windows SDK zusammen, falls du das man benutzen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2296130</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2296130</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Tue, 05 Feb 2013 09:40:03 GMT</pubDate></item></channel></rss>