Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
26 views

Char Int Void Int Int Char: #Include #Include

This C++ program implements a tic-tac-toe game between two players. It uses a char array to represent the game board and tracks the current player's turn and marker (X or O). Players take turns entering a number to place their marker on the board. After each turn, it checks if there is a win condition or a draw using functions. The main game loop continues until there is a winner or a draw.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

Char Int Void Int Int Char: #Include #Include

This C++ program implements a tic-tac-toe game between two players. It uses a char array to represent the game board and tracks the current player's turn and marker (X or O). Players take turns entering a number to place their marker on the board. After each turn, it checks if there is a win condition or a draw using functions. The main game loop continues until there is a winner or a draw.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

#include <iostream.

h>
#include <conio.h>
char square[10] = {'o','1','2','3','4','5','6','7','8','9'};
int checkwin();
void board();
int main()
{
int player = 1,i,choice;
char mark;
clrscr();
do
{
board();
player=(player%2)?1:2;
cout << "Player " << player << ", enter a number:
cin >> choice;
mark=(player == 1) ? 'X' : 'O';
if (choice == 1 && square[1] == '1')
square[1] = mark;
else if (choice == 2 && square[2] == '2')
square[2] = mark;
else if (choice == 3 && square[3] == '3')
square[3] = mark;
else if (choice == 4 && square[4] == '4')
square[4] = mark;
else if (choice == 5 && square[5] == '5')
square[5] = mark;
else if (choice == 6 && square[6] == '6')
square[6] = mark;
else if (choice == 7 && square[7] == '7')
square[7] = mark;
else if (choice == 8 && square[8] == '8')
square[8] = mark;
else if (choice == 9 && square[9] == '9')
square[9] = mark;
else
{
cout<<"Invalid move ";
player--;
getch();
}
i=checkwin();
player++;
}while(i==-1);
board();
if(i==1)
cout<<"==>\aPlayer "<<--player<<" win ";

";

else
cout<<"==>\aGame draw";
getch();
return 0;

}
/*********************************************
FUNCTION TO RETURN GAME STATUS
1 FOR GAME IS OVER WITH RESULT
-1 FOR GAME IS IN PROGRESS
O GAME IS OVER AND NO RESULT
**********************************************/
int checkwin()
{
if (square[1] == square[2] && 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;
}
/
*******************************************************************
FUNCTION TO DRAW BOARD OF TIC TAC TOE WITH PLAYERS MARK
*******************************************************************
*/

void board()
{
clrscr();
cout << "\n\n\tTic Tac Toe\n\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;
}

"

"

"

/
*******************************************************************
END OF PROJECT
********************************************************************/

You might also like