Question: Language is c++ and need to run it in code blocks. Lab : Tic-Tac-Toe In this lab, you are going to use a 2D array
Language is c++ and need to run it in code blocks.
Lab : Tic-Tac-Toe
In this lab, you are going to use a 2D array to create a program that allows two users to play tic-tac-toe. DO NOT attempt to write the whole program in one shot. Steps 1-3 are specifically focused on making sure that you understand how to use 2D arrays and required for the lab; steps 4-6 are optional, but are good preparation if you have time.
1. Create a 2D character array in your main() function and use nested for loops to fill the array with the letter e to represent empty spaces.
2. Create a function to print the board on the screen using a nested for loop. The function prototype is: void printBoard (char board [][3]);
3. Create a function that checks whether a particular move (row, col) is valid. A move is valid if the values of row and col are both numbers between 0 and 2 and the space is not already filled with X or O. If the move is valid then the function returns a boolean value of true, otherwise false. (No loops required.) Here is the function prototype: bool isValidMove (char board [][3], int row, int col);
4. Write a function to prompt the user for their next move. Call isValidMove to check if the move is valid and if it is then update the board to reflect the move. The parameter player will be passed X if the function is to get Xs move and O if it is to get Os move. The function prototype is: void move (char board [][3], char player);
5. Create a function to detect whether the game is over (i.e. either someone has won or a stalemate has been reached). Test to see whether any of the rows, columns or diagonals contain either all Xs or all Os and print out a congratulatory message stating who won if this is the case. Return true if the function finds a winner or if the board is completely full, and return false otherwise. The function prototype is: bool isGameOver(char board[][3]);
6. Put all the function calls together in main ( ) and alternate getting a move from player X and player O until someone wins.

SC:Windows system321cmd.exe layer 0: please enter the coordinates of your nove row col): 1 0 0 e e Player X: please enter the coordinates of your move row col); 1 1 x e e Player 0: please enter the coordinates of your move row col); 1 1 Invalid move! That cell is already taken Player 0: please enter the coordinates of your move row col); 2 0 x e e O e e Player X: please enter the coordinates of your nove row col) : 2 2 x e e Player X has won! Press anykey to continue
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
