Skip to content

Instantly share code, notes, and snippets.

@ultimatedark
Created November 7, 2019 12:45
Show Gist options
  • Save ultimatedark/ec0be6248d9996f182f35ec117fb39d1 to your computer and use it in GitHub Desktop.
Save ultimatedark/ec0be6248d9996f182f35ec117fb39d1 to your computer and use it in GitHub Desktop.
tic-tac-toe project code
#include<iostream>
#include<stdlib.h>
#include <cstdlib>
int choice;
int row,columns;
char board_ele[3][3]={'1','2','3','4','5','6','7','8','9'};
void display_board(){
system("clear");
std::cout<<"\n\tthe board:\n";
std::cout<<" | | \n";
std::cout<<" "<<board_ele[0][0]<<" | "<<board_ele[0][1]<<" | "<<board_ele[0][2]<<" \n";
std::cout<<" | | \n";
std::cout<<"-----|-----|-----\n";
std::cout<<" | | \n";
std::cout<<" "<<board_ele[1][0]<<" | "<<board_ele[1][1]<<" | "<<board_ele[1][2]<<" \n";
std::cout<<" | | \n";
std::cout<<"-----|-----|-----\n";
std::cout<<" | | \n";
std::cout<<" "<<board_ele[2][0]<<" | "<<board_ele[2][1]<<" | "<<board_ele[2][2]<<" \n";
std::cout<<" | | \n";
std::cout<<" | | \n";
}
void player_row(int choice,char flag)
{
switch (choice)
{
case 1: row=0,columns=0;
board_ele[row][columns]=flag;
break;
case 2: row=0,columns=1;
board_ele[row][columns]=flag;
break;
case 3: row=0,columns=2;
board_ele[row][columns]=flag;
break;
case 4: row=1,columns=0;
board_ele[row][columns]=flag;
break;
case 5: row=1,columns=1;
board_ele[row][columns]=flag;
break;
case 6: row=1,columns=2;
board_ele[row][columns]=flag;
break;
case 7: row=2,columns=0;
board_ele[row][columns]=flag;
break;
case 8: row=2,columns=1;
board_ele[row][columns]=flag;
break;
case 9: row=2,columns=2;
board_ele[row][columns]=flag;
break;
default:
break;
}
}
void player_turn()
{
char flag='O';
if(flag=='O')
{
std::cout<<"plaer 1 turn:";
std::cin>>choice;
player_row(choice,flag);
display_board();
}
flag='X';
if(flag=='X')
{
std::cout<<"plaer 2 turn:";
std::cin>>choice;
player_row(choice,flag);
display_board();
}
flag='O';
}
bool game_rule()
{
if ((board_ele[0][0]=='X'&&board_ele[1][1]=='X'&&board_ele[2][2]=='X')||(board_ele[0][0]=='X'&&board_ele[0][1]=='X'&&board_ele[0][2]=='X')||(board_ele[1][0]=='X'&&board_ele[1][1]=='X'&&board_ele[1][2]=='X')||(board_ele[2][0]=='X'&&board_ele[2][1]=='X'&&board_ele[2][2]=='X')||(board_ele[0][0]=='X'&&board_ele[1][0]=='X'&&board_ele[2][0]=='X')||(board_ele[0][1]=='X'&&board_ele[1][1]=='X'&&board_ele[2][1]=='X')||(board_ele[0][2]=='X'&&board_ele[1][2]=='X'&&board_ele[2][2]=='X'))
{
return true;
}
else
{
return false;
}
}
void game_over()
{
if (game_rule(board_ele)==true)
{
std::cout<<"player 1 is won";
}
if (game_rule(board_ele)==true)
{
std::cout<<"player 1 is won";
}
}
int main(){
int breake;
char player1,player2;
std::cout<<"\t\ttic tac toe\n"<<std::endl;
std::cout<<"\n\t\tplayer 1:[X}\n"<<std::endl;
std::cout<<"\n\t\tplayer 2:[O]\n"<<std::endl;
display_board();
for (int i = 0; i < 9; i++)
{
if(game_rule())
{
game_over();
break;
}
player_turn();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment