Implement an ADT that can used as a Tic-Tac-Toe game board. Your ADT will implement the interface given below. In the main method also include a simple usage example. Here are the rules of N x N Tic-Tac-Toe game: • Players take turns placing characters into empty squares (" "). • The first player A always places "X" characters, while the second player B always places "O" characters. • "X" and "O" characters are always placed into empty squares, never on filled ones. • The game ends when there are N of the same (non-empty) character filling any row, column, or diagonal. • The game also ends if all squares are non-empty. • No more moves can be played if the game is over Must be outputted in the console not with gui.

Microsoft Visual C#
7th Edition
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Joyce, Farrell.
Chapter11: Exception Handling
Section: Chapter Questions
Problem 20RQ
icon
Related questions
Question

Implement an ADT that can used as a Tic-Tac-Toe game board. Your ADT will implement the interface
given below. In the main method also include a simple usage example.
Here are the rules of N x N Tic-Tac-Toe game:
• Players take turns placing characters into empty squares (" ").
• The first player A always places "X" characters, while the second player B always places "O" characters.
• "X" and "O" characters are always placed into empty squares, never on filled ones.
• The game ends when there are N of the same (non-empty) character filling any row, column, or diagonal.
• The game also ends if all squares are non-empty.
• No more moves can be played if the game is over

Must be outputted in the console not with gui.

Exception class to be used:
public class TicTacToeException extends Exception {
public TicTacToeException (String message){
super (message);
Transcribed Image Text:Exception class to be used: public class TicTacToeException extends Exception { public TicTacToeException (String message){ super (message);
Interface to be implemented:
public interface TicTacToe
{
/** Starts a new game on a board of size x size.
@return void. */
public void reset (int size);
/** Retrieves either
'X' or 'O' from the position x and y on the
board.
@return Char ' ', 'X' or 'O'.
@throws TicTacToeException ("Invalid coordinates") if values x,y
exceeds board size. * /
public Char boardValue (int x, int y);
/** Simulates palyer A move. Player A plays 'X'.
@return 1 if player A won. 0 if this was the last move and the board
is full, thus draw. -1 if the game is not finished.
@throws TicTacToeException("Invalid coordinates") if values x,y
exceeds board size. TicTacToeException("Cell is already used") if
the cell at coordinates x,y was already used before */
public int playerAMove (int x, int y);
/** Simulates palyer B move. Player B plays '0'.
@return 1 if player B won. 0 if this was the last move and the board
is full, thus draw. -1 if the game is not finished.
@throws TicTacToeException ("Invalid coordinates") if values x,y
exceeds board size. TicTacToeException("Cell is already used") if
the cell at coordinates x,y was already used before */
public int playerBMove (int x, int y);
} // end TicTacToe
Transcribed Image Text:Interface to be implemented: public interface TicTacToe { /** Starts a new game on a board of size x size. @return void. */ public void reset (int size); /** Retrieves either 'X' or 'O' from the position x and y on the board. @return Char ' ', 'X' or 'O'. @throws TicTacToeException ("Invalid coordinates") if values x,y exceeds board size. * / public Char boardValue (int x, int y); /** Simulates palyer A move. Player A plays 'X'. @return 1 if player A won. 0 if this was the last move and the board is full, thus draw. -1 if the game is not finished. @throws TicTacToeException("Invalid coordinates") if values x,y exceeds board size. TicTacToeException("Cell is already used") if the cell at coordinates x,y was already used before */ public int playerAMove (int x, int y); /** Simulates palyer B move. Player B plays '0'. @return 1 if player B won. 0 if this was the last move and the board is full, thus draw. -1 if the game is not finished. @throws TicTacToeException ("Invalid coordinates") if values x,y exceeds board size. TicTacToeException("Cell is already used") if the cell at coordinates x,y was already used before */ public int playerBMove (int x, int y); } // end TicTacToe
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 7 steps with 1 images

Blurred answer
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage