Let me share with you C++ Code of Tic Tac Toe Game project.
Advertisement
Advertisement
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
#include <iostream> using namespace std; char square[10] = {'o','1','2','3','4','5','6','7','8','9'}; int IsItWinner(); void board(); int main() { int Game_Player = 1,i,Selection; char mark; do { board(); Game_Player=(Game_Player%2)?1:2; cout << "Game_Player " << Game_Player << ", enter a number: "; cin >> Selection; mark=(Game_Player == 1) ? 'X' : 'O'; if (Selection == 1 && square[1] == '1') square[1] = mark; else if (Selection == 2 && square[2] == '2') square[2] = mark; else if (Selection == 3 && square[3] == '3') square[3] = mark; else if (Selection == 4 && square[4] == '4') square[4] = mark; else if (Selection == 5 && square[5] == '5') square[5] = mark; else if (Selection == 6 && square[6] == '6') square[6] = mark; else if (Selection == 7 && square[7] == '7') square[7] = mark; else if (Selection == 8 && square[8] == '8') square[8] = mark; else if (Selection == 9 && square[9] == '9') square[9] = mark; else { cout<<"Invalid or wrong move "; Game_Player--; cin.ignore(); cin.get(); } i=IsItWinner(); Game_Player++; }while(i==-1); board(); if(i==1) cout<<"==>\aGame_Player "<<--Game_Player<<" win "; else cout<<"==>\aGame draw"; cin.ignore(); cin.get(); return 0; } /* FUNCTION TO RETURN GAME STATUS 1 FOR GAME IS OVER WITH RESULT -1 FOR GAME IS IN PROGRESS O GAME IS OVER AND NO RESULT */ void board() { system("cls"); cout << "\n\n\tTic Tac Toe\n\n"; cout << "Game_Player 1 (X) - Game_Player 2 (O)" << endl << endl<< endl; cout << endl<< endl; cout << " | | " << endl<< endl; cout << " " << square[1] << " | " << square[2] << " | " << square[3] << endl<< endl; cout << "*******|*******|*******" << endl<< endl; cout << " | | " << endl<< endl; cout << " " << square[4] << " | " << square[5] << " | " << square[6] << endl<< endl; cout << "*******|*******|*******" << endl<< endl; cout << " | | " << endl<< endl; cout << " " << square[7] << " | " << square[8] << " | " << square[9] << endl<< endl; cout << " | | " << endl << endl<< endl; } int IsItWinner() { if (square[1] == square[2] && square[2] == square[3]) return 1; else if (square[4] == square[5] && square[5] == square[6]) return 1; else if (square[7] == square[8] && square[8] == square[9]) return 1; else if (square[1] == square[4] && square[4] == square[7]) return 1; else if (square[2] == square[5] && square[5] == square[8]) return 1; else if (square[3] == square[6] && square[6] == square[9]) return 1; else if (square[1] == square[5] && square[5] == square[9]) return 1; else if (square[3] == square[5] && square[5] == square[7]) return 1; else if (square[1] != '1' && square[2] != '2' && square[3] != '3' && square[4] != '4' && square[5] != '5' && square[6] != '6' && square[7] != '7' && square[8] != '8' && square[9] != '9') return 0; else return -1; } |
Output
Tic Tac Toe
Game_Player 1 (X) – Game_Player 2 (O)
| |
1 | 2 | X
*******|*******|*******
| |
O | X | 6
*******|*******|*******
| |
7 | 8 | 9
| |
Game_Player 2, enter a number: