Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- using namespace std;
- void alreadeGetted()
- {
- cout << "Эта клетка уже занята, вы получили следующую клетку, либо пропустили ход" << endl;
- }
- int main()
- {
- string places[3][3] =
- {{"&"," & ","&"},
- {"&"," & ","&"},
- {"&"," & ","&"}};
- for(int i = 0; i <= 2; i++){
- for(int j = 0; j <= 2; j++)
- cout << places[i][j];
- cout << endl;}
- int x, o;
- short z = 1;
- while(z <= 9)
- {
- cout << "X, выберите вашу клетку: ";
- cin >> x;
- switch(x)
- {
- case 1:
- if (places[0][0] != "O"){
- places[0][0] = "X";
- break;
- } else alreadeGetted();
- case 2:
- if (places[0][1] != " O "){
- places[0][1] = " X ";
- break;
- } else alreadeGetted();
- case 3:
- if (places[0][2] != "O"){
- places[0][2] = "X";
- break;
- } else alreadeGetted();
- case 4:
- if (places[1][0] != "O"){
- places[1][0] = "X";
- break;
- } else alreadeGetted();
- case 5:
- if (places[1][1] != " O "){
- places[1][1] = " X ";
- break;
- } else alreadeGetted();
- case 6:
- if (places[1][2] != "O"){
- places[1][2] = "X";
- break;
- } else alreadeGetted();
- case 7:
- if (places[2][0] != "O"){
- places[2][0] = "X";
- break;
- } else alreadeGetted();
- case 8:
- if (places[2][1] != " O "){
- places[2][1] = " X ";
- break;
- } else alreadeGetted();
- case 9:
- if (places[2][2] != "O"){
- places[2][2] = "X";
- break;
- } else alreadeGetted();
- case 1337:
- places[0][0] = "X";
- places[1][0] = "X";
- places[2][0] = "X";
- break;
- }
- system("cls");
- z++;
- for(int i = 0; i <= 2; i++){
- for(int j = 0; j <= 2; j++)
- cout << places[i][j];
- cout << endl;}
- if((places[0][0] == "X" && places[0][1] == " X " && places[0][2] == "X") ||
- (places[1][0] == "X" && places[1][1] == " X " && places[1][2] == "X") ||
- (places[2][0] == "X" && places[2][1] == " X " && places[2][2] == "X") ||
- (places[0][0] == "X" && places[1][0] == "X" && places[2][0] == "X") ||
- (places[0][1] == " X " && places[1][1] == " X " && places[2][1] == " X ") ||
- (places[0][2] == "X" && places[1][2] == "X" && places[2][2] == "X") ||
- (places[0][0] == "X" && places[1][1] == " X " && places[2][2] == "X") ||
- (places[0][2] == "X" && places[1][1] == " X " && places[2][0] == "X"))
- {
- cout << "Победили X!" << endl;
- goto END;
- }
- cout << "O, выберите вашу клетку: ";
- cin >> o;
- switch(o)
- {
- case 1:
- if (places[0][0] != "X"){
- places[0][0] = "O";
- break;
- } else alreadeGetted();
- case 2:
- if (places[0][1] != " X "){
- places[0][1] = " O ";
- break;
- } else alreadeGetted();
- case 3:
- if (places[0][2] != "X"){
- places[0][2] = "O";
- break;
- } else alreadeGetted();
- case 4:
- if (places[1][0] != "X"){
- places[1][0] = "O";
- break;
- } else alreadeGetted();
- case 5:
- if (places[1][1] != " X "){
- places[1][1] = " O ";
- break;
- } else alreadeGetted();
- case 6:
- if (places[1][2] != "X"){
- places[1][2] = "O";
- break;
- } else alreadeGetted();
- case 7:
- if (places[2][0] != "X"){
- places[2][0] = "O";
- break;
- } else alreadeGetted();
- case 8:
- if (places[2][1] != " X "){
- places[2][1] = " O ";
- break;
- } else alreadeGetted();
- case 9:
- if (places[2][2] != "X"){
- places[2][2] = "O";
- break;
- } else alreadeGetted();
- case 1337:
- places[0][0] = "O";
- places[1][0] = "O";
- places[2][0] = "O";
- break;
- }
- system("cls");
- z++;
- for(int i = 0; i <= 2; i++){
- for(int j = 0; j <= 2; j++)
- cout << places[i][j];
- cout << endl;}
- if((places[0][0] == "O" && places[0][1] == " O " && places[0][2] == "O") ||
- (places[1][0] == "O" && places[1][1] == " O " && places[1][2] == "O") ||
- (places[2][0] == "O" && places[2][1] == " O " && places[2][2] == "O") ||
- (places[0][0] == "O" && places[1][0] == "O" && places[2][0] == "O") ||
- (places[0][1] == " O " && places[1][1] == " O " && places[2][1] == " O ") ||
- (places[0][2] == "O" && places[1][2] == "O" && places[2][2] == "O") ||
- (places[0][0] == "O" && places[1][1] == " O " && places[2][2] == "O") ||
- (places[0][2] == "O" && places[1][1] == " O " && places[2][0] == "O"))
- {
- cout << "Победили O!" << endl;
- goto END;
- }
- }
- cout << "Ничья." << endl;
- END:
- short ans;
- cout << "Выбери: \n"
- << "[1] Новая игра\n"
- << "[2] Выйти\n";
- cin >> ans;
- if (ans == 1)
- {
- system("cls");
- return main();
- }
- else if (ans == 2)
- {
- system("cls");
- cout << "Ты вышел из игры\n";
- return 0;
- }
- }
Add Comment
Please, Sign In to add comment