For part 2 you need to add two methods to your TicTacToe class and add code to Main to test that the methods work correctly. You will also create and use a new enum named GameState in TicTacToe.java. First, write a method named validMove in TicTacToe. This method will take two integer inputs representing a row and a column. The method will return a boolean value (true or false). True should be returned if the row and column values are both greater than zero, less than three, and index an empty location in the board. Otherwise return False. (Note that the board does not need passed into the method because it is an instance variable belonging to the TicTacToe object.)
need help with this java project part 2 as well:
INSTRUCTIONS
For part 2 you need to add two methods to your TicTacToe class and add code to Main to test that the methods work correctly. You will also create and use a new enum named GameState in TicTacToe.java.
First, write a method named validMove in TicTacToe. This method will take two integer inputs representing a row and a column. The method will return a boolean value (true or false). True should be returned if the row and column values are both greater than zero, less than three, and index an empty location in the board. Otherwise return False.
(Note that the board does not need passed into the method because it is an instance variable belonging to the TicTacToe object.)
Second, write a method named gameStatus in TicTacToe. This method will take no input and will return a value of type GameState. GameState is a new enum that you should implement. GameState should have three values: WIN, DRAW, CONTINUE.
The gameStatus method should check the board to see if either player X or player O has won (three in a row), or if the game is a draw (the entire board is filled up but no one has won), or the game should continue (if there are empty spaces remaining on the board).
Lastly, you must add code to the main method in Main.java to test both methods. All of the following must be tested by at least one line of code, with the results of the tests printed to the screen:
validMove returns false when one of its inputs is less than zero
validMove returns false when one of its inputs is greater than two
validMove returns false when its inputs index a cell in the board that is not empty
validMove returns true when its inputs are in bounds and refer to an empty board cell
gameStatus returns WIN when a player has three in a row
gameStatus returns DRAW when the board is full and there are no three-in-a-rows
gameStatus returns CONTINUE when at least one cell is empty and there are no three-in-a-rows
Trending now
This is a popular solution!
Step by step
Solved in 2 steps