powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Tic tac toe case
2 сообщений из 2, страница 1 из 1
Tic tac toe case
    #38063082
Staazex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
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.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
#include <iostream>
#include <cstdlib>
#include <time.h>
 
using namespace std;
int option, test, row, col, turn, option2 = 0;
char board[3][3];
 
//print the board to the screen 
void drawBoard()
{
     cout<<"\n";
     for(int i = 0; i < 3; i++)
     {
         for(int j = 0; j < 3; j++)
         {
                 cout<<"|"<<board[i][j]<<"|  ";
         }        
         cout<<"\n-------------\n";
     }        
}     
 
//this method returns a 0 if there's no winner, 1 if X wins, 2 if O wins, 3 if tie
int checkWinner()
{
//check to see if X won    
        if(board[0][0] == 'X' && board[0][1] == 'X' && board[0][2] == 'X')
          return 1;
        if(board[1][0] == 'X' && board[1][1] == 'X' && board[1][2] == 'X')
          return 1;     
        if(board[2][0] == 'X' && board[2][1] == 'X' && board[2][2] == 'X')
          return 1;  
                        
        if(board[0][0] == 'X' && board[1][0] == 'X' && board[2][0] == 'X')
          return 1;  
        if(board[0][1] == 'X' && board[1][1] == 'X' && board[2][1] == 'X')
          return 1; 
        if(board[0][2] == 'X' && board[1][2] == 'X' && board[2][2] == 'X')
          return 1;           
 
        if(board[0][0] == 'X' && board[1][1] == 'X' && board[2][2] == 'X')
          return 1;   
        if(board[2][0] == 'X' && board[1][1] == 'X' && board[0][2] == 'X')
          return 1;  
//check to see if O won
        if(board[0][0] == 'O' && board[0][1] == 'O' && board[0][2] == 'O')
          return 0;
        if(board[1][0] == 'O' && board[1][1] == 'O' && board[1][2] == 'O')
          return 0;     
        if(board[2][0] == 'O' && board[2][1] == 'O' && board[2][2] == 'O')
          return 0;  
                        
        if(board[0][0] == 'O' && board[1][0] == 'O' && board[2][0] == 'O')
          return 0;  
        if(board[0][1] == 'O' && board[1][1] == 'O' && board[2][1] == 'O')
          return 0; 
        if(board[0][2] == 'O' && board[1][2] == 'O' && board[2][2] == 'O')
          return 0;           
 
        if(board[0][0] == 'O' && board[1][1] == 'O' && board[2][2] == 'O')
          return 0;   
        if(board[2][0] == 'O' && board[1][1] == 'O' && board[0][2] == 'O')
          return 0;                                               
}        
//AI. generate a random move and see if it's available. if it is, then make it
//if it isn't then generate another random move
void AI()
{
     col = -1;
     row = -1;
     while(col == -1 || row == -1)
     {
        time_t seconds;
        time(&seconds);
        srand((unsigned int) seconds);  
        col = rand()%3;
        row = rand()%3;
        if(board[row][col] != ' ')
        {
            col = -1;
            row = -1; 
        }
        board[row][col] = 'O';                        
     }           
      
}     
int main()
{
 
    do
    {
      option2 = 0; //so we can play multiple times
      cout<<"Enter a menu option:\n";
      cout<<"-----------------------------\n\n";
      cout<<"1. Play Tic Tac Toe\n";
      cout<<"2. Quit\n";
      cin>>option;
       for(int i = 0; i < 3; i++)
       {
           for(int j = 0; j < 3; j++)
           {
                   board[i][j] = ' ';
           }        
       }    
      if(option !=2)
      {
        while(option2 != -1)
        {         
            if(turn%2 == 0)//if it's even then it's X's turn
            {
                bool condition = true;
                while(condition == true) 
                {     
                    cout<<"\n\nEnter a move:\n";
                    cout<<"Enter the row you wish to make your move on (0,1,2)\n";
                    cin>>row;
                    cout<<"Enter the column you wish to make your move on (0,1,2)\n";
                    cin>>col;  
                    if(board[row][col] == ' ')
                    {   
                        board[row][col] = 'X';
                        turn++;
                        condition = false;
                    }    
                    else
                        cout<<"Invalid move!\n";
                }    
            }    
            else //AI must do something
            {
                AI();                   
                turn++;
            }
                           
            if(checkWinner() == 1) //X wins
            {
                cout<<"Congratulations! X won!\n\n";
                option2 = -1;
            }               
            else if(checkWinner() == 2) //X wins
            {
                cout<<"Congratulations! O won!\n\n";
                option2 = -1;
            }               
            drawBoard();
        }  
         
      }  
       
    }while(option != 2);
      cout<<"\n\n\n\nEnter anything to quit.";
      cin>>test;
}



как правильно поставить этот код в case ? 1.Play game 2. Instructions 3.Exit ... экспериментирую просто

Модератор: Тема перенесена из форума "Программирование".
...
Рейтинг: 0 / 0
Tic tac toe case
    #38064362
some1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Staazex,

Ничё здеся нипанимаю ваще
Т.е. требуется более детальная постановка задачи. Уточните вопрос, будет больше вероятность, что кто-нибудь даст полезный ответ
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Tic tac toe case
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]