Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

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.

image text in transcribed

image text in transcribed

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 retumed 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 valid Move returns false when one of its inputs is greater than two valid Move returns false when its inputs index a cell in the board that is not empty valid Move 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 UML Diagram for TicTacToe There begin to be more options for how each person's UML looks. Maybe you will also detect who the winner is in the gameStatus method and save that information in an instance variable named winner. Maybe you will use instance variables row_choice and col_choice to save the chosen moves. up to you. There are other ways to organize your TicTacToe game and some of them are probably better in terms of writing readable, efficient, minimalist code). It's Tictactoe - board : CellStatel - Winner : String row_choice : int - col choice : int

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Design And SQL For DB2

Authors: James Cooper

1st Edition

1583473572, 978-1583473573

More Books

Students also viewed these Databases questions

Question

Why is the System Build Process an iterative process?

Answered: 1 week ago