Professional Documents
Culture Documents
Xsi 0
Xsi 0
Acest program va realiza cel mai popular joc numit x si 0 numele original fiind TicTaeToe din Germania. S-a realizat in mod consola. In prima etapa folosim un patrat 3x3 in care introducem cifre pana la 9.
Cand jucatorul nr.1 va apasa o cifra in locul ei se va afisa X-ul iar la Jucatorul 2 se va afisa0
In caz ca unul din jucatori va face pe diagonala 0 fiind cazul de fataJucator 2 , va fi castigator.
Dupa terminarea jocului programul va interactiona cu jucatorii si va intreba daca se doreste un nou joc.
Cod Sursa:
#include <iostream> // void 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 iPlayerTurn(1); bool bGameOver(true);
do { std::cout << cSquare1 << "|" << cSquare2 << "|" << cSquare3 << std::endl; std::cout << "-+-+-"<< std::endl; std::cout << cSquare4 << "|" << cSquare5 << "|" << cSquare6 << std::endl; std::cout << "-+-+-"<< std::endl; std::cout << cSquare7 << "|" << cSquare8 << "|" << cSquare9 << std::endl;
std::cout << "Jucator" << iPlayerTurn << "muta:" << std::endl; bool bValidMove; do { char cNextMove; std::cin >> cNextMove; bValidMove = true;
if (cNextMove == '1' && cSquare1 == '1') { cSquare1 = cPlayerMark; } else if (cNextMove == '2' && cSquare2 == '2') { cSquare2 = cPlayerMark; } else if (cNextMove == '3' && cSquare3 == '3') { cSquare3 = cPlayerMark; } else if (cNextMove == '4' && cSquare4 == '4') { cSquare4 = cPlayerMark; } else if (cNextMove == '5' && cSquare5 == '5') { cSquare5 = cPlayerMark; } else if (cNextMove == '6' && cSquare6 == '6') { cSquare6 = cPlayerMark; } else if (cNextMove == '7' && cSquare7 == '7') { cSquare7 = cPlayerMark; } else if (cNextMove == '8' && cSquare8 == '8') { cSquare8 = cPlayerMark; } else if (cNextMove == '9' && cSquare9 == '9') { cSquare9 = cPlayerMark; } else { std::cout << "Miscare invalida. Incearca din nou." << std::endl; bValidMove = false; } } while (!bValidMove); bGameOver bool bWinGame = false; = true;
if (cSquare1 != '1') { if (cSquare2 == cSquare1 bGameOver = true; } if (cSquare4 == cSquare1 bGameOver = true; } } if (cSquare5 != '5') { if (cSquare1 == cSquare5 bGameOver = true; } if (cSquare2 == cSquare5 bGameOver = true; } if (cSquare4 == cSquare5 bGameOver = true; } if (cSquare3 == cSquare5 bGameOver = true; } } if (cSquare9 != '9') { if (cSquare3 == cSquare9
bGameOver = true; } if (cSquare7 == cSquare9 && cSquare8 == cSquare9) { bGameOver = true; } } 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) { if (bWinGame) { std::cout << "Jucator" << iPlayerTurn << " a castigat!" << std::endl; } std::cout cSquare3 << std::endl; std::cout std::cout cSquare6 << std::endl; std::cout std::cout cSquare9 << std::endl; << cSquare1 << "|" << cSquare2 << "|" << << "-+-+-"<< std::endl; << cSquare4 << "|" << cSquare5 << "|" << << "-+-+-"<< std::endl; << cSquare7 << "|" << cSquare8 << "|" <<
std::cout << "Joc terminat!" << std::endl; std::cout << "Joci din nou (y/n)?" << std::endl; char cPlayAgain; std::cin >> cPlayAgain; if (cPlayAgain == 'y') { bGameOver = false; cSquare1 cSquare2 cSquare3 cSquare4 cSquare5 cSquare6 cSquare7 cSquare8 cSquare9 = = = = = = = = = '1'; '2'; '3'; '4'; '5'; '6'; '7'; '8'; '9';