Advertisement
Guest User

Untitled

a guest
Jan 28th, 2015
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.50 KB | None | 0 0
  1. #include<iostream>
  2. char board[3][3];
  3. int winner;
  4. bool endgame;
  5. void initboard()
  6.  {
  7.     endgame=false;
  8.     for(int i=0;i<3;++i)
  9.       for(int j=0;j<3;++j) board[i][j]='*';
  10.  }
  11. bool Isblank()
  12.  {
  13.     for(int i=0;i<3;++i)
  14.      for(int j=0;j<3;++j)
  15.       if(board[i][j]=='*') return true;
  16.     return false;  
  17.   }
  18. void Checkwin()
  19.  {
  20.     int i;
  21.     char key='*';
  22.     winner=0;
  23.     for(i=0;i<3;++i) if((board[i][0]==board[i][2])&&(board[i][0]==board[i][1])&&(board[i][0])!='*') key=board[i][0];
  24.     for(i=0;i<3;++i) if((board[0][i]==board[1][i])&&(board[0][i]==board[2][i])&&(board[0][i]!='*')) key=board[0][i];
  25.     if((board[0][0]==board[1][1])&&(board[0][0]==board[2][2])&&(board[0][0]!='*')) key=board[0][0];
  26.     if((board[0][2]==board[1][1])&&(board[0][2]==board[2][0])&&(board[0][2]!='*')) key=board[0][2];
  27.    
  28.     if(key=='X')
  29.      {
  30.         winner=1;
  31.         endgame=true;
  32.       }
  33.     if(key=='O')
  34.      {
  35.         winner=2;
  36.         endgame=false;
  37.        }
  38.      if(Isblank==false) endgame=true;  
  39.    }  
  40. void Drawboard()  
  41.  {
  42.     for(int i=0;i<3;++i)
  43.      {
  44.         for(int j=0;i<3;++j)
  45.          {
  46.             printf(" %c  |",board[i][j]);
  47.            }
  48.            printf("\n");
  49.       }
  50.     }  
  51. void playgame()
  52.  {
  53.     int x,y;
  54.      while (endgame== false)
  55.      {
  56.         if(endgame==false)
  57.          {
  58.             tt1:
  59.             printf("\n nhap nuoc di cho nguoi choi thu nhat : ");
  60.             std::cin>>x;
  61.             std::cin>>y;
  62.             if((x<3)&&(y<3))
  63.               {
  64.                 if (board[x][y]=='*')
  65.                  {
  66.                     board[x][y]='X';
  67.                     Checkwin();
  68.                       }
  69.                     else goto tr;
  70.                 printf("\n player1 %d %d",x,y);  
  71.                 }
  72.                 else {
  73.                     tr: printf("\n nhap lai gia tri : ");
  74.                     goto tt1;
  75.                 }
  76.                  
  77.             Drawboard();     
  78.                  
  79.            }
  80.          if(endgame==false)
  81.           {
  82.             tt2:
  83.                 printf("\n nhap nuoc di cho nguoi thu hai :");
  84.                 std::cin>>x;
  85.                 std::cin>>y;
  86.             if((x<3)&&(y<3))
  87.                {
  88.                 if(board[x][y]=='*')
  89.                  {
  90.                     board[x][y]='O';
  91.                     Checkwin();
  92.                     }
  93.                 else goto tr2; 
  94.                    }
  95.             else
  96.              {
  97.                 tr2: "\n moi nhap lai :";
  98.                 goto tt2;
  99.                         }    
  100.             Drawboard();               
  101.           }
  102.            
  103.       }
  104.       printf("\n ket thuc :");
  105.       switch (winner)
  106.        {
  107.          case 0: printf("\n hoa "); break;
  108.          case 1: printf("\n nguoi 1 thang ");break;
  109.          case 2: printf("\n nguoi 2 thang ");break;
  110.        }
  111.        getchar();
  112.     }  
  113. int main(int argac, char* argv[])
  114.  {
  115.     initboard();
  116.     Drawboard();
  117.     playgame();
  118.     getchar();
  119.     return 0;
  120.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement