Posted: August 13th, 2015
Description: For project 4 let’s build a text-based Tic Tac Toe program. After each player moves, re-display the new board. Let’s have users enter a row number and a column number to put their X or O on the board.
We want the program to determine the winner or a draw. We also want the program to enforce the rule that a player can only put his X or O in an empty position. I would also like the option to have 2 humans play or have a human play against the computer.
Sample 1
This program will play tic tac toe.
Enter 1 for a 1-player game. Enter 2 for a 2-player game.
>> 1
cols
1 2 3
r 1 | |
o -+-+-
w 2 | |
s -+-+-
3 | |
Player 1 enter the row number of where you would like to go?
>> 1
Player 1 enter the column number of where you would like to go?
>> 2
cols
1 2 3
r 1 |X|
o -+-+-
w 2 | |
s -+-+-
3 | |
Computer’s turn.
cols
1 2 3
r 1 |X|
o -+-+-
w 2 |O|
s -+-+-
3 | |
Player 1 enter the row number of where you would like to go?
>> 2
Player 1 enter the column number of where you would like to go?
>> 2
Error: Someone has already gone there. Please try again.
Player 1 enter the row number of where you would like to go?
>> 2
Player 1 enter the column number of where you would like to go?
>> 3
cols
1 2 3
r 1 |X|
o -+-+-
w 2 |O|X
s -+-+-
3 | |
Computer’s turn.
cols
1 2 3
r 1 |X|
o -+-+-
w 2 |O|X
s -+-+-
3O| |
Player 1 enter the row number of where you would like to go?
>> 4
Error: You can only enter a value from 1 to 3.
Player 1 enter the row number of where you would like to go?
>> 3
Player 1 enter the column number of where you would like to go?
>> 3
cols
1 2 3
r 1 |X|
o -+-+-
w 2 |O|X
s -+-+-
3O| |X
Computer’s turn.
cols
1 2 3
r 1 |X|O
o -+-+-
w 2 |O|X
s -+-+-
3O| |
The computer won! Game over!
Hints:
Here are some hints. Begin slowly and create and test different pieces of the software; don’t just try to build it in one sitting. Use function decomposition to break the problem (and program) into smaller manageable pieces.
I will give additional hints in future weeks.
Turn In:
Grading Criteria:
This program is worth 100 points. Points will be distributed via the following table:
Place an order in 3 easy steps. Takes less than 5 mins.