Tic Tac Toe C++

This is my impelementation for tic-tac-toe in c++.The code is tested in standard c++.If you find any problems just let me know.Thanks.

#include <iostream>
#include<cstdlib>
#include<string>
using namespace std;
void start()
{
i…


This content originally appeared on DEV Community and was authored by Muhammad Bilal Mohib-ul-Nabi

This is my impelementation for tic-tac-toe in c++.The code is tested in standard c++.If you find any problems just let me know.Thanks.

#include <iostream>
#include<cstdlib>
#include<string>
using namespace std;
void start()
{
    int number;
    cout << "____________________________________________________________________________________________________" << endl;
    cout << "____________________________OK WLCOME TO THE TIC-TAC-TOE GAME_______________________________________" << endl;
    cout << "THE TOSS IS GOING TO BE DONE\n";
    cout << "____________________________________________READY___________________________________________________" << endl;
    cout << "Decide HEAD OR TAIL\n";
    cout << "press any random number:\t";
    cin >> number;
    switch (number % 2)
    {
    case 0:cout << "HEAD Won the toss\n";
        break;
    case 1:cout << "TAIL Won the toss\n";
        break;
    }
    cout << "_________________________OK START YOUR GAME NOW\n";
}

void design()
{
    system("CLS");
    char arr[3][3] = { { '1','2','3' },{ '4','5','6'},{ '7','8','9'} };
    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            cout << "|" << arr[i][j] << "|";

        }
        cout << endl;
    }
}

int main()
{
    string name1, name2;
    start();
    system("pause");
    system("CLS");
    cout << "Enter your name player 1 which won the toss\n";
    cin >> name1;
    cout << "Enter your name player 2 who lost the toss\n";
    cin >> name2;
    cout << "Player 1 is'" << name1 << "'choose head or tail\n\n";
    cout << "Player 2 is'" << name2 << "'enter any number\n\n";
    cout << "X is for player " << name1 << endl;
    cout << "# is for player " << name2 << endl;
    design();
    char arr[3][3] = { { '1','2','3' },{ '4','5','6'},{ '7','8','9'} };
    int count = 0, isGameOver = 0, number;
    bool wrong = false;
    while (count < 9 && isGameOver != 1)
    {
        switch (count % 2)
        {
        case 0:
        {
            count++;
            cout << "Its Player________________________________ "<< name1<<"___________________________turn\n";
            cout << "                                                                                          " << name1 << " has X SYMBOL\n";
            cout << "                                                                                          " << name2 << " has # SYMBOL\n";
            cout << "Enter the number\n";
            cin >> number;
            switch (number)
            {
            case 1:
            {
                if (arr[0][0] == 'X' || arr[0][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[0][0] = 'X';
                }
                break;
            }
            case 2:
            {
                if (arr[0][1] == 'X' || arr[0][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[0][1] = 'X';
                }
                break;
            }
            case 3:
            {
                if (arr[0][2] == 'X' || arr[0][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[0][2] = 'X';
                }
                break;
            }
            case 4:
            {
                if (arr[1][0] == 'X' || arr[1][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                {
                    arr[1][0] = 'X';
                }
                break;
            }
            case 5:
            {
                if (arr[1][1] == 'X' || arr[1][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[1][1] = 'X';
                }
                break;
            }
            case 6:
            {
                if (arr[1][2] == 'X' || arr[1][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[1][2] = 'X';
                }
                break;
            }
            case 7:
            {
                if (arr[2][0] == 'X' || arr[2][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][0] = 'X';
                }
                break;
            }
            case 8:
            {
                if (arr[2][1] == 'X' || arr[2][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][1] = 'X';
                }
                break;
            }
            case 9:
            {
                if (arr[2][2] == 'X' || arr[2][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][2] = 'X';
                }
                break;
            }
            }
            system("CLS");
            for (int i = 0; i < 3; i++)                                                                         
            {
                for (int j = 0; j < 3; j++)
                {
                    cout << "|" << arr[i][j] << "|";

                }
                cout << endl;
            }

            if (((arr[0][0] == 'X') && (arr[0][1] == 'X') && (arr[0][2] == 'X')) ||
                ((arr[1][0] == 'X') && (arr[1][1] == 'X') && (arr[1][2] == 'X')) ||
                ((arr[2][0] == 'X') && (arr[2][1] == 'X') && (arr[2][2] == 'X')) ||
                ((arr[0][2] == 'X') && (arr[1][2] == 'X') && (arr[2][2] == 'X')) ||
                ((arr[0][1] == 'X') && (arr[1][1] == 'X') && (arr[2][1] == 'X')) ||
                ((arr[0][0] == 'X') && (arr[1][0] == 'X') && (arr[2][0] == 'X')) ||
                ((arr[0][0] == 'X') && (arr[1][1] == 'X') && (arr[2][2] == 'X')) ||
                ((arr[0][2] == 'X') && (arr[1][1] == 'X') && (arr[2][0] == 'X')))
            {
                cout << "player     ________________"<< name1<<"   _________________________wins";
                isGameOver = 1;
            }
            else if(count==9)
            {
                cout << "\n\n\nDRAW has occured";
                isGameOver = 1;

            }
            break;
        }

        case 1:
        {
            count++;
            cout <<"Its Player ____________________________ "<<name2<<" ____________________________________ turn\n";
            cout << "                                                                                          " << name2 << " has # SYMBOL\n";
            cout << "                                                                                          " << name1 << " has X SYMBOL\n";
            cout << "Enter the number\n";
            cin >> number;
            switch (number)
            {
            case 1:
            {
                if (arr[0][0] == 'X' || arr[0][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                  arr[0][0] = '#';
                }
                break;
            }
            case 2:
            {
                if (arr[0][1] == 'X' || arr[0][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[0][1] = '#';
                }
                break;
            }
            case 3:
            {
                if (arr[0][2] == 'X' || arr[0][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[0][2] = '#';
                }
                break;
            }
            case 4:
            {
                if (arr[1][0] == 'X' || arr[1][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[1][0] = '#';
                }
                break;
            }
            case 5:
            {
                if (arr[1][1] == 'X' || arr[1][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[1][1] = '#';
                }
                break;
            }
            case 6:
            {
                if (arr[1][2] == 'X' || arr[1][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[1][2] = '#';
                }
                break;
            }
            case 7:
            {
                if (arr[2][0] == 'X' || arr[2][0] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][0] = '#';
                }
                break;
            }
            case 8:
            {
                if (arr[2][1] == 'X' || arr[2][1] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][1] = '#';
                }
                break;
            }
            case 9:
            {
                if (arr[2][2] == 'X' || arr[2][2] == '#')
                {
                    cout << "Enter another number";
                    cout << "Enter the number\n";
                    cin >> number;
                    wrong = true;
                }
                else
                {
                    arr[2][2] = '#';
                }
                break;
            }
            default:cout << "Enter right number please";
            }
            system("CLS");
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    cout << "|" << arr[i][j] << "|";

                }
                cout << endl;
            }

            if (((arr[0][0] == 'o') && (arr[0][1] == 'o') && (arr[0][2] == 'o')) ||
                ((arr[1][0] == 'o') && (arr[1][1] == 'o') && (arr[1][2] == 'o')) ||
                ((arr[2][0] == 'o') && (arr[2][1] == 'o') && (arr[2][2] == 'o')) ||
                ((arr[0][2] == 'o') && (arr[1][2] == 'o') && (arr[2][2] == 'o')) ||
                ((arr[0][1] == 'o') && (arr[1][1] == 'o') && (arr[2][1] == 'o')) ||
                ((arr[0][0] == 'o') && (arr[1][0] == 'o') && (arr[2][0] == 'o')) ||
                ((arr[0][0] == 'o') && (arr[1][1] == 'o') && (arr[2][2] == 'o')) ||
                ((arr[0][2] == 'o') && (arr[1][1] == 'o') && (arr[2][0] == 'o')))
            {
                cout << "player_________________________"<<name2<<"__________________wins";
                isGameOver = 1;
            }
            else if(count==9)
            {
                cout << "\n\n\nDRAW has occured";
                isGameOver = 1;
            }
            break;
        }
        }
    }
    return 0;
}


This content originally appeared on DEV Community and was authored by Muhammad Bilal Mohib-ul-Nabi


Print Share Comment Cite Upload Translate Updates
APA

Muhammad Bilal Mohib-ul-Nabi | Sciencx (2021-07-18T15:21:30+00:00) Tic Tac Toe C++. Retrieved from https://www.scien.cx/2021/07/18/tic-tac-toe-c/

MLA
" » Tic Tac Toe C++." Muhammad Bilal Mohib-ul-Nabi | Sciencx - Sunday July 18, 2021, https://www.scien.cx/2021/07/18/tic-tac-toe-c/
HARVARD
Muhammad Bilal Mohib-ul-Nabi | Sciencx Sunday July 18, 2021 » Tic Tac Toe C++., viewed ,<https://www.scien.cx/2021/07/18/tic-tac-toe-c/>
VANCOUVER
Muhammad Bilal Mohib-ul-Nabi | Sciencx - » Tic Tac Toe C++. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/07/18/tic-tac-toe-c/
CHICAGO
" » Tic Tac Toe C++." Muhammad Bilal Mohib-ul-Nabi | Sciencx - Accessed . https://www.scien.cx/2021/07/18/tic-tac-toe-c/
IEEE
" » Tic Tac Toe C++." Muhammad Bilal Mohib-ul-Nabi | Sciencx [Online]. Available: https://www.scien.cx/2021/07/18/tic-tac-toe-c/. [Accessed: ]
rf:citation
» Tic Tac Toe C++ | Muhammad Bilal Mohib-ul-Nabi | Sciencx | https://www.scien.cx/2021/07/18/tic-tac-toe-c/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.