c++

I was just wondering if there is a way to keep the numbers from displaying in the board when the program runs.





#include <iostream>
#include<conio.h>
#include<stdlib.h>
using namespace std;

char square[100] = { 'o', '1', '2', '3', '4', '5', '6', '7', '8', '9' };

int checkwin();
void board();

int main()
{

int player = 1, i, choice;

char game_piece;
do
{
board();
player = (player % 2) ? 1 : 2;

cout << "Player " << player << ", enter a number: ";
cin >> choice;

game_piece = (player == 1) ? 'X' : 'O';

if (choice == 1 && square[1] == '1')

square[1] = game_piece;
else if (choice == 2 && square[2] == '2')

square[2] = game_piece;
else if (choice == 3 && square[3] == '3')

square[3] = game_piece;
else if (choice == 4 && square[4] == '4')

square[4] = game_piece;
else if (choice == 5 && square[5] == '5')

square[5] = game_piece;
else if (choice == 6 && square[6] == '6')

square[6] = game_piece;
else if (choice == 7 && square[7] == '7')

square[7] = game_piece;
else if (choice == 8 && square[8] == '8')

square[8] = game_piece;
else if (choice == 9 && square[9] == '9')

square[9] = game_piece;
else
{
cout << " Sorry Can't Move There.......\n "<<" Try Again.......";

player--;
cin.ignore();
cin.get();
}
i = checkwin();

player++;
} while (i == -1);
board();
if (i == 1)

cout << "==>\aPlayer " << --player << " win ";
else
cout << "==>\aGame draw";

cin.ignore();
cin.get();
return 0;
}



int checkwin()
{
if (square[1] == square[2] == square[3])

return 1;
else if (square[4] == square[5] && square[5] == square[6])

return 1;
else if (square[7] == square[8] && square[8] == square[9])

return 1;
else if (square[1] == square[4] && square[4] == square[7])

return 1;
else if (square[2] == square[5] && square[5] == square[8])

return 1;
else if (square[3] == square[6] && square[6] == square[9])

return 1;
else if (square[1] == square[5] && square[5] == square[9])

return 1;
else if (square[3] == square[5] && square[5] == square[7])

return 1;
else if (square[1] != '1' && square[2] != '2' && square[3] != '3'
&& square[4] != '4' && square[5] != '5' && square[6] != '6'
&& square[7] != '7' && square[8] != '8' && square[9] != '9')

return 0;
else
return -1;
}



void board()
{
system("cd");
system("cls");
system("color 0b");
cout << " Tic" << " Tac" <<" Toe\n";
cout << "\n";
cout << "Player 1 (X) - Player 2 (O)" << endl << endl;
cout << endl;

cout << " | | " << endl;
cout << " " << square[1] << " | " << square[2] << " | " << square[3] << endl;

cout << "_____|_____|_____" << endl;
cout << " | | " << endl;

cout << " " << square[4] << " | " << square[5] << " | " << square[6] << endl;

cout << "_____|_____|_____" << endl;
cout << " | | " << endl;

cout << " " << square[7] << " | " << square[8] << " | " << square[9] << endl;

cout << " | | " << endl << endl;
}
Yeah, there is, I wrote your code again for you as well.
Everything I did, by the way, is in the board function. I added another board, for reference so you know where the numbers are, and made a blank board where the X's and O's go. I made another array, squareOnBoard, for displaying it on the board. I defined it as a blank array. Then I added this loop here:
1
2
3
4
5
6
7
    for(int i=0;i<=9;i++)
    {
        if (square[i]=='X' || square[i]=='O' )
        {
            squareOnBoard[i]=square[i];
        }
    }

It checks the nine of the spots on the array that count to see if they have X's or O's, and make it so that the squareOnBoard array has it. It works.
Here is the full code:

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
#include <iostream>
#include<conio.h>
#include<stdlib.h>
using namespace std;

char square[100] = { 'o', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
char squareOnBoard[100] = { 'o', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' };
int checkwin();
void board();
int main()
{
    int player = 1, i, choice;
    char game_piece;
    do {
        board();
        player = (player % 2) ? 1 : 2;
        cout << "Player " << player << ", enter a number: ";
        cin >> choice;
        game_piece = (player == 1) ? 'X' : 'O';
        if (choice == 1 && square[1] == '1')
            square[1] = game_piece;
        else if (choice == 2 && square[2] == '2')
            square[2] = game_piece;
        else if (choice == 3 && square[3] == '3')
            square[3] = game_piece;
        else if (choice == 4 && square[4] == '4')
            square[4] = game_piece;
        else if (choice == 5 && square[5] == '5')
            square[5] = game_piece;
        else if (choice == 6 && square[6] == '6')
            square[6] = game_piece;
        else if (choice == 7 && square[7] == '7')
            square[7] = game_piece;
        else if (choice == 8 && square[8] == '8')
            square[8] = game_piece;
        else if (choice == 9 && square[9] == '9')
            square[9] = game_piece;
        else
        {
            cout << " Sorry Can't Move There.......\n "<<" Try Again.......";
            player--;
            cin.ignore();
            cin.get();
        }
        i = checkwin();
        player++;
    } while (i == -1);
    board();
    if (i == 1)
        cout << "==>\aPlayer " << --player << " win ";
    else
        cout << "==>\aGame draw";
    cin.ignore();
    cin.get();
    return 0;
}
int checkwin()
{
    if (square[1] == square[2] == square[3])
        return 1;
    else if (square[4] == square[5] && square[5] == square[6])
        return 1;
    else if (square[7] == square[8] && square[8] == square[9])
        return 1;
    else if (square[1] == square[4] && square[4] == square[7])
        return 1;
    else if (square[2] == square[5] && square[5] == square[8])
        return 1;
    else if (square[3] == square[6] && square[6] == square[9])
        return 1;
    else if (square[1] == square[5] && square[5] == square[9])
        return 1;
    else if (square[3] == square[5] && square[5] == square[7])
        return 1;
    else if (square[1] != '1' && square[2] != '2' && square[3] != '3' && square[4] != '4' && square[5] != '5' && square[6] != '6' && square[7] != '7' && square[8] != '8' && square[9] != '9')
        return 0;
    else
        return -1;
}
void board()
{
    system("cd");
    system("cls");
    system("color 0b");
    cout << " Tic" << " Tac" <<" Toe\n";
    cout << "\n";
    cout << "Player 1 (X) - Player 2 (O)" << endl << endl;
    cout << endl;
    for(int i=0;i<=9;i++)
    {
        if (square[i]=='X' || square[i]=='O' )
        {
            squareOnBoard[i]=square[i];
        }
    }
    cout << "  1  |  2  |  3  " << "\t\t" << "  " << squareOnBoard[1] << "  |  " << squareOnBoard[2] << "  |  " << squareOnBoard[3] << "  " << endl;
    cout << "-----------------" << "\t\t" << "-----------------" << endl;
    cout << "  4  |  5  |  6  " << "\t\t" << "  " << squareOnBoard[4] << "  |  " << squareOnBoard[5] << "  |  " << squareOnBoard[6] << "  " << endl;
    cout << "-----------------" << "\t\t" << "-----------------" << endl;
    cout << "  7  |  8  |  9  " << "\t\t" << "  " << squareOnBoard[7] << "  |  " << squareOnBoard[8] << "  |  " << squareOnBoard[9] << "  " << endl << endl;
}
Yeah, there is, I wrote your code again for you as well.

WHY would you do this.

Mandatory reading before you continue helping people: http://www.cplusplus.com/articles/DjGEy60M/

-Albatross
thanks alot and him rewriting my code wasn't giving me any answers I did the work he literally just added a bored, which was just a condensed version of the one a made above.
Topic archived. No new replies allowed.