<?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[Tic-Tac-Toe - falscher Gewinner!]]></title><description><![CDATA[<p>hallo!</p>
<p>also die aufgabenstellung lautet, dass wir ein programm schreiben soll, das alles beinhaltet, was wir bis jetzt gelernt haben (for-, while-loop, if-anweisung, arrays, unterprogramme bzw funktionen, adressoperator, pointer).<br />
tja - ich hab ein tic-tac-toe geschrieben....und nicht wirklich viele sachen davon verwendet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>abgesehen davon funktioniert es nicht richtig. das prob ist, dass es nach kurzer zeit einen gewinner ausspuckt - obwohl das spiel noch gar nicht aus ist.<br />
ich hab zwar schon bei anderen tic-tac-toe codes nachgeschaut, aber die sind irgendwie alle ganz anders aufgebaut als meins.</p>
<p>und wie kann ich es machen, dass die felder leer sind - bis jmd sein zeichen reinsetzt?</p>
<p>ich hoffe, irgendjemand hat zeit mir mal kurz unter die arme zu greifen... <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>
<p>das ist der code:</p>
<pre><code class="language-cpp">//Programm Tic-Tac-Toe

#include &lt;iostream&gt;
using namespace std;

 bool x = true;
 bool y = false;
 int i, g;
 int j, h;
 int mat[3][3] = {{9, 9, 9}, {9, 9, 9}, {9, 9, 9}};
 int c;

int main() {

    cout &lt;&lt; &quot;Programm Tic-Tac-Toe.cpp&quot; &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 00&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 01&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 02&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 10&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 11&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 12&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 20&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 21&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 22&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;
    cout &lt;&lt; &quot; '9' bdeutet 'leeres Feld!'&quot; &lt;&lt; endl;

for (int n = 1; n &lt; 10;) {

    cout &lt;&lt; &quot;Spieler 0 (0): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = y;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[0][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[1][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[2][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][2] &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;Spieler 1 (1): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = x;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[0][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[1][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[2][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][2] &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

int *gewinner = 0;

if ((mat[0][0] == mat[0][1] == mat[0][2])||(mat[0][0] == mat[1][0] == mat[2][0])||(mat[0][0] == mat[1][1] == mat[2][2])) {

              gewinner = &amp; mat[0][0];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if ((mat[1][0] == mat[1][1] == mat[1][2])||(mat[0][1] == mat[1][1] == mat[2][1])) {

              gewinner = &amp; mat[1][1];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if ((mat[2][0] == mat[2][1] == mat[2][2])||(mat[0][2] == mat[1][2] == mat[2][2])) {

              gewinner = &amp; mat[2][2];

               cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
}
}
}
else {n = n+1;}

}

    cin &gt;&gt; c;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/198042/tic-tac-toe-falscher-gewinner</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 19:42:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/198042.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 17 Nov 2007 16:05:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:05:02 GMT]]></title><description><![CDATA[<p>hallo!</p>
<p>also die aufgabenstellung lautet, dass wir ein programm schreiben soll, das alles beinhaltet, was wir bis jetzt gelernt haben (for-, while-loop, if-anweisung, arrays, unterprogramme bzw funktionen, adressoperator, pointer).<br />
tja - ich hab ein tic-tac-toe geschrieben....und nicht wirklich viele sachen davon verwendet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>abgesehen davon funktioniert es nicht richtig. das prob ist, dass es nach kurzer zeit einen gewinner ausspuckt - obwohl das spiel noch gar nicht aus ist.<br />
ich hab zwar schon bei anderen tic-tac-toe codes nachgeschaut, aber die sind irgendwie alle ganz anders aufgebaut als meins.</p>
<p>und wie kann ich es machen, dass die felder leer sind - bis jmd sein zeichen reinsetzt?</p>
<p>ich hoffe, irgendjemand hat zeit mir mal kurz unter die arme zu greifen... <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>
<p>das ist der code:</p>
<pre><code class="language-cpp">//Programm Tic-Tac-Toe

#include &lt;iostream&gt;
using namespace std;

 bool x = true;
 bool y = false;
 int i, g;
 int j, h;
 int mat[3][3] = {{9, 9, 9}, {9, 9, 9}, {9, 9, 9}};
 int c;

int main() {

    cout &lt;&lt; &quot;Programm Tic-Tac-Toe.cpp&quot; &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 00&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 01&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 02&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 10&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 11&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 12&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 20&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 21&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 22&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;
    cout &lt;&lt; &quot; '9' bdeutet 'leeres Feld!'&quot; &lt;&lt; endl;

for (int n = 1; n &lt; 10;) {

    cout &lt;&lt; &quot;Spieler 0 (0): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = y;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[0][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[1][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[2][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][2] &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;Spieler 1 (1): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = x;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[0][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[0][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[1][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[1][2] &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; mat[2][0] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][1] &lt;&lt; &quot;  |  &quot; &lt;&lt; mat[2][2] &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

int *gewinner = 0;

if ((mat[0][0] == mat[0][1] == mat[0][2])||(mat[0][0] == mat[1][0] == mat[2][0])||(mat[0][0] == mat[1][1] == mat[2][2])) {

              gewinner = &amp; mat[0][0];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if ((mat[1][0] == mat[1][1] == mat[1][2])||(mat[0][1] == mat[1][1] == mat[2][1])) {

              gewinner = &amp; mat[1][1];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if ((mat[2][0] == mat[2][1] == mat[2][2])||(mat[0][2] == mat[1][2] == mat[2][2])) {

              gewinner = &amp; mat[2][2];

               cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
}
}
}
else {n = n+1;}

}

    cin &gt;&gt; c;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1404955</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404955</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:05:02 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:15:18 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Zum eigentlichen Problem : So ein Dreifachvergleich ist die Ursache</p>
<pre><code class="language-cpp">(mat[0][0] == mat[0][1] == mat[0][2])
</code></pre>
<p>Denn der Compiler wertet diese Vergleiche nicht wie du denkst auf einmal aus sondern nacheinander.<br />
Also zuerst</p>
<pre><code class="language-cpp">mat[0][0] == mat[0][1]
</code></pre>
<p>Da kommt ein boolscher Wert raus (true oder false)<br />
und <strong>dieser Ergebniswert</strong> wird dann mit dem dritten Argument verglichen (in ein int umgewandelt), nicht aber der eigentliche Feldinhalt!</p>
<pre><code class="language-cpp">(bool) == mat[0][2]
</code></pre>
<p>Umgehen kannst du das nur mit sauberer Klammerung</p>
<pre><code class="language-cpp">((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2]))
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404961</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:15:18 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:17:49 GMT]]></title><description><![CDATA[<p>aha - dankeschön :p</p>
<p>und weißt du auch vl wie ich es machen kann, damit das feld am anfang leer ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404964</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:17:49 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:26:31 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Ich verstehe nicht wo das Problem ist. Du initialisierst ja die Felder des Arrays schon mit 9, was bei dir bedeutet das es leer ist. Also must du die Ausgabe nur umschreiben, so das bei einem Feldwert von 9 ein Leerzeichen ausgegeben wird, ansonsten der eigentliche Wert.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404968</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404968</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:26:31 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:32:40 GMT]]></title><description><![CDATA[<p>nein, das lässte er nicht zu. wahrscheinlich, weil ich das ganze als &quot;int&quot; definiert hab...</p>
<pre><code class="language-cpp">bool x = true;
 bool y = false;
 int i, g;
 int j, h;
 int mat[3][3] = {{ ,  ,  }, { ,  ,  }, { ,  ,  }};
 int c;
</code></pre>
<p>dabei markiert er mir die zeile mit der def. der matrix als fehler, wenn ich die 9er rausstreiche.</p>
<p>und das mit dem logischen oder hab ich auch gemacht, aber wenn jmd gewonnen hat, spielt er einfach weiter. vl stimmt was mit der klammersetzung nicht?</p>
<pre><code class="language-cpp">int *gewinner = 0;

if (((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2])) || ((mat[0][0] == mat[1][0]) &amp;&amp; (mat[1][0] == mat[2][0])) || ((mat[0][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][2]))) {

              gewinner = &amp; mat[0][0];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if (((mat[1][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[1][2])) || ((mat[0][1] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][1]))) {

              gewinner = &amp; mat[1][1];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;

if (((mat[2][0] == mat[2][1]) &amp;&amp; (mat[2][1] == mat[2][2])) || ((mat[0][2] == mat[1][2]) &amp;&amp; (mat[1][2] == mat[2][2]))) {

              gewinner = &amp; mat[2][2];

               cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
}
}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1404973</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404973</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:32:40 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 16:43:34 GMT]]></title><description><![CDATA[<p>Hallo</p>
<blockquote>
<p>nein, das lässte er nicht zu. wahrscheinlich, weil ich das ganze als &quot;int&quot; definiert hab...</p>
</blockquote>
<p>Na du must schon ein bißchen mehr machen. Zum Beispiel eine Funktion schreiben...</p>
<pre><code class="language-cpp">char Out(int value)
{
  if (value == 9)
    return ' ';
  if (value == 0)
    return '0';
  return '1';
}

// Aufrufbeispiel :
cout &lt;&lt; Out(mat[0][0]);
</code></pre>
<blockquote>
<p>und das mit dem logischen oder hab ich auch gemacht, aber wenn jmd gewonnen hat, spielt er einfach weiter. vl stimmt was mit der klammersetzung nicht?</p>
</blockquote>
<p>Du must ja auch in den Sieg-Fällen die Schleife bzw. das Programm verlassen.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404978</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404978</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Sat, 17 Nov 2007 16:43:34 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 17:17:59 GMT]]></title><description><![CDATA[<p>ok - ich hab jetzt am anfang leere kästchen.</p>
<p>aber jetzt lässt er jeden nur einmal drankommen und schreibt dann &quot;der gewinner ist spieler 9 &quot;</p>
<p>ich poste nochmal den ganzen code <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<pre><code class="language-cpp">//Programm Tic-Tac-Toe

#include &lt;iostream&gt;
using namespace std;

 bool x = true;
 bool y = false;
 int i, g;
 int j, h;
 int mat[3][3] = {{9 ,9 ,9 }, {9 ,9 ,9 }, {9 ,9 ,9 }};
 int c;

//Prototyp:

char Out(int value);

char Out(int value){

  if (value == 9)
    return ' ';
  if (value == 0)
    return '0';
  return '1';
}

int main() {

    cout &lt;&lt; &quot;Programm Tic-Tac-Toe.cpp&quot; &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 00&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 01&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 02&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 10&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 11&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 12&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot; 20&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 21&quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot; 22&quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

for (int n = 1; n &lt; 10;) {

    cout &lt;&lt; &quot;Spieler 0 (0): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = y;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[0][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[0][1]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[0][2]) &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[1][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[1][1])&lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[1][2]) &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[2][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[2][1]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[2][2]) &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

    cout &lt;&lt; &quot;Spieler 1 (1): Welche Zeile?&quot; &lt;&lt; endl;
    cin &gt;&gt; i;
    cout &lt;&lt; endl &lt;&lt; &quot;Welche Spalte?&quot; &lt;&lt; endl;
    cin &gt;&gt; j;
    cout &lt;&lt; endl;
    cout &lt;&lt; &quot;Feld[&quot; &lt;&lt; i &lt;&lt; &quot;][&quot; &lt;&lt; j &lt;&lt; &quot;]&quot; &lt;&lt; endl;

    mat[i][j] = x;

    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[0][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[0][1]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[0][2]) &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[1][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[1][1])&lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[1][2]) &lt;&lt; &quot;  |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;|  &quot; &lt;&lt; Out(mat[2][0]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[2][1]) &lt;&lt; &quot;  |  &quot; &lt;&lt; Out(mat[2][2]) &lt;&lt; &quot;  |&quot;  &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot;| &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; | &quot; &lt;&lt; &quot;   &quot; &lt;&lt; &quot; |&quot; &lt;&lt; endl;
    cout &lt;&lt; &quot;          &quot; &lt;&lt; &quot; -----------------&quot; &lt;&lt; endl;
    cout &lt;&lt; endl &lt;&lt; endl &lt;&lt; endl;

int *gewinner = 0;

if (((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2])) || ((mat[0][0] == mat[1][0]) &amp;&amp; (mat[1][0] == mat[2][0])) || ((mat[0][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][2]))) {

              gewinner = &amp; mat[0][0];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
              break;

}       
if (((mat[1][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[1][2])) || ((mat[0][1] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][1]))) {

              gewinner = &amp; mat[1][1];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
              break;
}
if (((mat[2][0] == mat[2][1]) &amp;&amp; (mat[2][1] == mat[2][2])) || ((mat[0][2] == mat[1][2]) &amp;&amp; (mat[1][2] == mat[2][2]))) {

              gewinner = &amp; mat[2][2];

               cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
               break;

}
else {n = n+1;}

}

    cin &gt;&gt; c;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1404992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404992</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 17:17:59 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 17:26:48 GMT]]></title><description><![CDATA[<pre><code>if (((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2])) || ((mat[0][0] == mat[1][0]) &amp;&amp; (mat[1][0] == mat[2][0])) || ((mat[0][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][2]))) {
***
}
</code></pre>
<p>Öhh du vergleichst ob Feld[0][0] dasselbe ist wie Feld [0][1] und wenn dieses Feld dasselbe ist wie Feld[0][2] hat derjenige gewonnen.</p>
<p>Ist auch logisch, denn du vergleichst ja nicht den Inhalt. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Sprich: Wenn alle Felder z.B. in der obere waagerechten Zeile leer sind, wird reingesprungen und gesagt 'gewonnen'. Du musst das so abändern das der Inhalt vergleicht wird, nicht die Felder an sich.</p>
<p>//Edit</p>
<p>Das gilt für jede Gewinner Zeile.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1404997</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1404997</guid><dc:creator><![CDATA[Searence]]></dc:creator><pubDate>Sat, 17 Nov 2007 17:26:48 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 17:47:20 GMT]]></title><description><![CDATA[<p>ah - stimmt.....</p>
<p>ich hab jetzt einfach die bedingung gestellt, dass die werte entweder 0 oder 1 sein müssen.</p>
<p>nur.....*gg*.....jetzt kommt wieder gar kein gewinner <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> .... :p</p>
<pre><code class="language-cpp">int *gewinner = 0;

if (((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1))) || ((mat[0][0] == mat[1][0]) &amp;&amp; (mat[1][0] == mat[2][0]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1))) || ((mat[0][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][2]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1)))) {

              gewinner = &amp; mat[0][0];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
              break;

}       
if ((((mat[1][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[1][2]) &amp;&amp; (mat[1][0] == (1 &amp;&amp; 0))) || ((mat[0][1] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][1]) &amp;&amp; (mat[0][1] == (1 &amp;&amp; 0))))) {

              gewinner = &amp; mat[1][1];

              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
              break;
}
if ((((mat[2][0] == mat[2][1]) &amp;&amp; (mat[2][1] == mat[2][2]) &amp;&amp; (mat[2][0] == (1 &amp;&amp; 0))) || ((mat[0][2] == mat[1][2]) &amp;&amp; (mat[1][2] == mat[2][2]) &amp;&amp; (mat[0][2] == (1 &amp;&amp; 0))))) {

              gewinner = &amp; mat[2][2];

               cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
               break;

}
else {n = n+1;}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1405006</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1405006</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 17:47:20 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 17:58:13 GMT]]></title><description><![CDATA[<p>Dharma schrieb:</p>
<blockquote>
<pre><code class="language-cpp">int *gewinner = 0;
    
if (((mat[0][0] == mat[0][1]) &amp;&amp; (mat[0][1] == mat[0][2]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1))) || ((mat[0][0] == mat[1][0]) &amp;&amp; (mat[1][0] == mat[2][0]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1))) || ((mat[0][0] == mat[1][1]) &amp;&amp; (mat[1][1] == mat[2][2]) &amp;&amp; (mat[0][0] == (0 &amp;&amp; 1)))) {
              
              gewinner = &amp; mat[0][0];
              
              cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; *gewinner &lt;&lt; endl;
              break;
              
}     ...
</code></pre>
</blockquote>
<p>Dein Problem ist der Schnipsel mat[0][0] == (0 &amp;&amp; 1). Das was du da geschrieben hast kann nicht funktionieren. Du verlangst als auswertung das mat[0][0] gleichzeitig 0 und 1 ist, um es übersichtlich zu machen solltest du anstelle davon, das hier machen:</p>
<pre><code>(mat[0][0] == 0 || mat[0][0] == 1)
</code></pre>
<p>oder um es richtig gut übersichtlich zu machen, so: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<pre><code class="language-cpp">int gewinner = 0;

for(gewinner = 0;gewinner &lt;= 1;gewinner++)
{
    if((mat[0][0] == gewinner &amp;&amp; mat[0][1] == gewinner &amp;&amp; mat[0][2] == gewinner) ||
       (mat[1][0] == gewinner &amp;&amp; mat[1][1] == gewinner &amp;&amp; mat[1][2] == gewinner) ||
       (mat[2][0] == gewinner &amp;&amp; mat[2][1] == gewinner &amp;&amp; mat[2][2] == gewinner))    //frage die horizontale  ab.
    {
        cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; gewinner &lt;&lt; endl;
        break;
    }

    if((mat[0][0] == gewinner &amp;&amp; mat[1][0] == gewinner &amp;&amp; mat[2][0] == gewinner) ||
       (mat[0][1] == gewinner &amp;&amp; mat[1][1] == gewinner &amp;&amp; mat[2][1] == gewinner) ||
       (mat[0][2] == gewinner &amp;&amp; mat[1][2] == gewinner &amp;&amp; mat[2][2] == gewinner))    //frage die vertikalen ab.
    {
        cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; gewinner &lt;&lt; endl;
        break;
    }

    if((mat[0][0] == gewinner &amp;&amp; mat[1][1] == gewinner &amp;&amp; mat[2][2] == gewinner) ||
       (mat[0][2] == gewinner &amp;&amp; mat[1][1] == gewinner &amp;&amp; mat[2][0] == gewinner))    //frage die diagonalen ab.
    {
        cout &lt;&lt; &quot;Der Gewinner ist Spieler &quot; &lt;&lt; gewinner &lt;&lt; endl;
        break;
    }
}
</code></pre>
<p>//Edit</p>
<p>Und wenn du jetzt noch eine bool Variable reinsetzt die sagt das ein Spieler gewonnen hast kannst du darauf auch noch dementsprechend reagieren, Spiel neustarten, etc... was mir allerdings nicht ganz klar ist... wieso hast du diese Zeile</p>
<pre><code>else{n = n+1;}
</code></pre>
<p>abhängig vom Gewinn gemacht?</p>
<p>Mach ein</p>
<pre><code>n++;
</code></pre>
<p>draus und gut ist dem, funzt auch. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1405011</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1405011</guid><dc:creator><![CDATA[Searence]]></dc:creator><pubDate>Sat, 17 Nov 2007 17:58:13 GMT</pubDate></item><item><title><![CDATA[Reply to Tic-Tac-Toe - falscher Gewinner! on Sat, 17 Nov 2007 18:17:45 GMT]]></title><description><![CDATA[<p>oh....dankeschön <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>jetzt muss ich dann noch falsche eingaben abfangen.</p>
<p>danke für die hilfe ihr beiden!</p>
<p>lg<br />
Dharma</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1405021</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1405021</guid><dc:creator><![CDATA[Dharma]]></dc:creator><pubDate>Sat, 17 Nov 2007 18:17:45 GMT</pubDate></item></channel></rss>