Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write a program that allows two people to play a game of tic-tac-toe, with the computer acting as a referee. Here is what your program

image text in transcribedimage text in transcribedimage text in transcribedimage text in transcribedimage text in transcribed

Write a program that allows two people to play a game of tic-tac-toe, with the

computer acting as a referee. Here is what your program might look like in action:

Welcome! Tic-Tac-Toe is a two player game. Enter player one's name: Foo Enter player two's name: Bar

Players take turns marking a square. Only squares not already marked can be picked. Once a player has

marked three squares in a row, he or she wins! If all squares are marked and no three squares are the same, a tied game is declared. Have Fun!

Game board: || || ||

It is Foo's turn. Pick a row between 1 and 3: 1 Pick a column between 1 and 3: 1

Game board: |X| || ||

It is Bar's turn. Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 2

Game board: |X| |O| ||

It is Foo's turn. Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 2 ILLEGAL CHOICE! TRY AGAIN... Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 1 Game board: |X| |XO| ||

It is Bar's turn. Pick a row between 1 and 3: 3 Pick a column between 1 and 3: 1

Game board: |X|

|XO| |O|

It is Foo's turn. Pick a row between 1 and 3: 3 Pick a column between 1 and 3: 3

Game board: |X| |XO| |O X|

It is Bar's turn. Pick a row between 1 and 3: 1 Pick a column between 1 and 3: 3

Game board: |X O| |XO| |O X|

Game Over - Bar WINS!!!

In solving this problem, create a TicTacToeBoard class that contains a two- dimensional array representing the current state of a tic-tac-toe board. Initially, every element of this array could contain a space character, to indicate it is empty. You should also define a toString method in this class to make it possible for a client program to print the board as shown in the above output.

Your main program will alternately let each of the two players make a move, but not allow any move that is illegal either because a particular square is already occupied, or because a value less than 1 or greater than 3 has been input for the row or column position. After each turn is made the computer should check if any row, column or diagonal contains three X marks or three O marks; if so, a winner should be declared and the game should end at that point.

You may also add the following optional method to TicToeBoard.java if you like: // returns true if the board is a tie (optional) public boolean isTie() {...}

Write a program that allows two people to play a game of "tic-tac-toe", with the computer acting as a "referee." Here is what your program might look like in action: Welcome! Tic-Tac-Toe is a two player game. Enter player one's name: Foo Enter player two's name: Bar Players take turns marking a square. Only squares not already marked can be picked. Once a player has marked three squares in a row, he or she wins! If all squares are marked and no three squares are the same, a tied game is declared. Have Fun! It is Foo's turn. Pick a row between 1 and 3: 1 Pick a column between 1 and 3:1 It is Bar's turn. Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 2 It is Foo's turn. Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 2 ILLEGAL CHOICE! TRY AGAIN... Pick a row between 1 and 3: 2 Pick a column between 1 and 3: 1 Game board: xxO It is Bar's turn. Pick a row between 1 and 3: 3 Pick a column between 1 and 3: 1 Game board: x It is Foo's turn. Pick a row between 1 and 3: 3 Pick a column between 1 and 3:3 Game board: It is Bar's turn. Pick a row between 1 and 3: 1 Pick a column between 1 and 3:3 Game board: Game Over - Bar WINS!!! In solving this problem, create a TicTacToeBoard class that contains a twodimensional array representing the current state of a tic-tac-toe board. Initially, every element of this array could contain a space character, to indicate it is empty. You should also define a toString method in this class to make it possible for a client program to print the board as shown in the above output. Your main program will alternately let each of the two players make a move, but not allow any move that is illegal - either because a particular square is already occupied, or because a value less than 1 or greater than 3 has been input for the row or column position. After each turn is made the computer should check if any row, column or diagonal contains three ' X ' marks or three ' O ' marks; if so, a winner should be declared and the game should end at that point. You may also add the following optional method to TicToeBoard.java if you like: // returns true if the board is a tie (optional) public boolean isTie() {}

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

Upgrading Oracle Databases Oracle Database New Features

Authors: Charles Kim, Gary Gordhamer, Sean Scott

1st Edition

B0BL12WFP6, 979-8359657501

More Books

Students also viewed these Databases questions

Question

What do you mean by dual mode operation?

Answered: 1 week ago

Question

Explain the difference between `==` and `===` in JavaScript.

Answered: 1 week ago

Question

Describe the nature of negative messages.

Answered: 1 week ago