silent12
Mitglied
Hallo
Habe gerade ein Tic,Tac,Toe Spiel für den CMD-Editor programmiert und bekomme jetzt immer wenn ich eine Zahl für das anzukreuzende Feld eingeben möchte einen Fehler :/
Hier der Code (würde mich über Tipps dazu SEHR freuen, Code einfach selber ausprobieren):
Habe gerade ein Tic,Tac,Toe Spiel für den CMD-Editor programmiert und bekomme jetzt immer wenn ich eine Zahl für das anzukreuzende Feld eingeben möchte einen Fehler :/
Hier der Code (würde mich über Tipps dazu SEHR freuen, Code einfach selber ausprobieren):
Code:
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
char cSquare1 = '1';
char cSquare2 = '2';
char cSquare3 = '3';
char cSquare4 = '4';
char cSquare5 = '5';
char cSquare6 = '6';
char cSquare7 = '7';
char cSquare8 = '8';
char cSquare9 = '9';
int iSpieler = 1;
bool bGameOver = true;
do
{
cout << cSquare1 << " | " << cSquare2 << " | " << cSquare3 << endl;
cout << cSquare4 << " | " << cSquare5 << " | " << cSquare6 << endl;
cout << cSquare7 << " | " << cSquare8 << " | " << cSquare9 << endl;
char cZeichen;
if (iSpieler == 1)
{cZeichen = 'X';
}
else
{cZeichen = 'O';
}
cout <<"Player" << iSpieler << "'s move:" << endl;
bool bEingabe;
do
{char cInput;
cin >> cInput;
bEingabe = true;
if (cInput == '1' && cSquare1 == '1')
{cSquare1 = cZeichen;
}
else if (cInput == '2' && cSquare1 == '2')
{cSquare1 = cZeichen;
}
else if (cInput == '3' && cSquare1 == '3')
{cSquare1 = cZeichen;
}
else if (cInput == '4' && cSquare1 == '4')
{cSquare1 = cZeichen;
}
else if (cInput == '5' && cSquare1 == '5')
{cSquare1 = cZeichen;
}
else if (cInput == '6' && cSquare1 == '6')
{cSquare1 = cZeichen;
}
else if (cInput == '7' && cSquare1 == '7')
{cSquare1 = cZeichen;
}
else if (cInput == '8' && cSquare1 == '8')
{cSquare1 = cZeichen;
}
else if (cInput == '9' && cSquare1 == '9')
{cSquare1 = cZeichen;
}
else
{cout << "Falsche Eingabe. Versuche es noch einmal" << endl;
bEingabe = false;
}
}
while ( !bEingabe); //cEingabe != true || cEingabe == false
bGameOver = false;
bool bWinGame = true;
if (cSquare1 != '1')
{
if(cSquare2 == cSquare1 && cSquare3 == cSquare1)
{bGameOver = true;
}
if(cSquare4 == cSquare1 && cSquare7 == cSquare1)
{bGameOver = true;
}
}
if (cSquare5 != '5')
{
if(cSquare1 == cSquare5 && cSquare9 == cSquare5)
{bGameOver = true;
}
if(cSquare2 == cSquare5 && cSquare8 == cSquare5)
{bGameOver = true;
}
if(cSquare4 == cSquare5 && cSquare6 == cSquare5)
{bGameOver = true;
}
if(cSquare7 == cSquare5 && cSquare3 == cSquare5)
{bGameOver = true;
}
}
if (cSquare5 != '9')
{
if(cSquare3 == cSquare9 && cSquare6 == cSquare9)
{bGameOver = true;
}
if(cSquare7 == cSquare9 && cSquare8 == cSquare9)
{bGameOver = true;
}
}
//Unentschieden
if (cSquare1 != '1' && cSquare2 != '2' && cSquare3 != '3' &&
cSquare4 != '4' && cSquare5 != '5' && cSquare6 != '6' &&
cSquare7 != '7' && cSquare8 != '8' && cSquare9 != '9' && !bGameOver)
{
bGameOver = true;
bWinGame = false;
}
if (bGameOver) //bGameOver == true || bGameOver != false
{
if (bWinGame) //bWingame == true
{cout <<"Player" << iSpieler << " wins!" << endl;
}
cout << cSquare1 << " | " << cSquare2 << " | " << cSquare3 << endl;
cout << cSquare4 << " | " << cSquare5 << " | " << cSquare6 << endl;
cout << cSquare7 << " | " << cSquare8 << " | " << cSquare9 << endl;
cout <<"Game Over!" << endl;
cout <<"Play again (y/n) ?" << endl;
char cPlayAgain;
cin >> cPlayAgain;
if(cPlayAgain == 'y')
{
bGameOver = false;
cSquare1 = '1';
cSquare2 = '2';
cSquare3 = '3';
cSquare4 = '4';
cSquare5 = '5';
cSquare6 = '6';
cSquare7 = '7';
cSquare8 = '8';
cSquare9 = '9';
}
iSpieler = 1;
} //Game Over
else
{
if(iSpieler == 1)
{
iSpieler = 2;
}
else
{iSpieler = 1;
}
}
} while (!bGameOver);
return 0;
}