SPU CSC 1230 Winter 2021 Final Project
Summary
Develop a Tic Tac Toe game that will match a player against the computer.
Requirements
Use a typical 3 x 3 board. The vertical columns must be labeled A, B, C. The horizontal rows must be
labeled 1, 2, 3. For Example:
A B C
1
2
3
Must do’s:
− Use User-Defined Functions.
− Use Branching.
− Use Loops.
− Use String functions.
− Randomly determine who will move first, the human or computer.
− Assign O to the computer and X to the Human player.
− Ask the user to select their move using the horizontal and vertical position. For example: A1 for the
upper left square, or B2 for the center square.
− After each move, redraw the board with the X’s and O’s in the right positions.
− After each game, ask the user if they want to play again. If they do, start the game again.
Must not do’s:
− Don’t use User Classes or Objects
− Don’t use images
− Don’t copy a solution, even if you can find it, on the Internet or any other source. It will be
discovered and you will receive zero points for the project.
Part 1 – Design the program. (30% of Total)
− Describe the principle functions you will be using, their purpose, parameters, and return type.
− Create a Process Flow Diagram that describes how control flows through your program.
Part 2 – Develop and test the code. (70% of Total)
− This seems self explanatory.
SPU CSC 1230 Winter 2021 Final Project
Game Setup
At the beginning of a game, clear all X’s and O’s from the board and randomly determine whether the
computer or the player will select first.
Game Play.
A player wins when they put their market on three consecutive squares, either horizontally, vertically, or
diagonally. If all squares have filled with markers and neither player won, declare a tie and complete the
game.
After each game, check with the human player to see if they want to play again.
Part 1 Ru
ic:
Total points available for the Part 1: 69
Points are allocated as follows:
− Function List and Signatures 50%
− Process Flow Diagram 50%
Part 2 Ru
ic:
Total points available for the Part 2: 161
Points are allocated as follows:
− Compilable Code 15%
− Implements Solution 20%
− Gameplay 15%
− Uses Functions 10%
− Uses Loops 10%
− Uses Branching 10%
− Uses String Functions 10%
− Commented Code 10%
Deliverables:
− A single compressed (either .zip or .rar) file folder containing the source code files only. Don’t just
zip the whole project folder. Please label the folder in this format: [Last Name]+”_final.zip (or .rar)”
For example: vickers_final.zip
− Submit the file on Canvas