0% found this document useful (0 votes)
9 views

Python Microproject 2

The project report outlines the development of a Tic-Tac-Toe game for two players using Python. It details the game's objectives, procedures followed, and skills developed during the project, including programming and teamwork. The report also includes a literature review, resources required, and potential applications of the project.

Uploaded by

khantaukirhasan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Python Microproject 2

The project report outlines the development of a Tic-Tac-Toe game for two players using Python. It details the game's objectives, procedures followed, and skills developed during the project, including programming and teamwork. The report also includes a literature review, resources required, and potential applications of the project.

Uploaded by

khantaukirhasan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

A Project Report On

“Tic-Tac-Toe Game”

For more Free Study Material


Join Our Channel- https://t.me/campusifyy
1.0 Rationale
The objective of this project is to develop the well-known board game Tic-Tac-
Toe for two players.
Generally, this is a two-player strategy board game. The Tic-Tac-Toe game is
based on having a game board (2D array) of size 3 x 3. The players alternate placing Xs
and Os on the board until either one has placed three Xs or Os in a row horizontally,
vertically, or diagonally; or all nine board squares are filled. The player wins if s/he
draws three Xs or three Os in a row. Otherwise, the game is draw.
Initially the board grid squares are initialized to zeros. Xs and Os might be
denoted by numbers inside the board grid by ones and twos respectively. I.e. if player one
chooses X, the location of that choice is registered as 1 and when player two chooses O
the location of that choice in your array is registered as 2. At the end if a row of 1s is
registered then player one won the game. Or if a row of 2s is registered thus player two
won the game. If not, the game is draw. The game ends when there is no more empty
fields in the array (board) to fill or if one of the players wins the game.

2.0 Aim of the project


1. To develop an interesting game for children to pass their free time.
2. To develop the well-known board game Tic-Tac-Toe for two players.
3. To be one of the players to get three same symbols in a row – horizontally, vertically or
diagonally on a 3 x 3 grid.

3.0 Course Outcomes Achieved


1. Display message on screen using Python script on IDE.
2. Develop python program to demonstrate use of Operators.
3. Perform operations on data structures in Python.
4. Develop functions for given problems.

4.0 Literature Review


Author (Publication) Abstract Conclusion
Kalyani Adawadkar This paper describes the main We used this paper to learn
(Sigma Institute of features and applications of different features available in
Engineering) Python Programming Python and its applications.
David Beazley This book contains a complete We used this book to learn the
(Sams Publishing) learning of Python Programming basic concepts of Python
Programming
Tom Gutschmidt This book covers game We used this book to learn how to
(Premier Press) programming in three different build efficient, flexible and well-
scripting languages i.e, Python, Lua integrated programs and systems
and Ruby
Table 1- Literature Review
5.0 Actual procedure followed
Actual procedure followed during the project is mentioned in the table below with
the planned start date and completed finish date.
Sr.no Details of activity Planned Planned Name of responsible
Start date Finish date Team members
1. Decide project topic 1.

2. Decide features of project 1.

3. Prepare project proposal 1.

4. Decide different data 1.


structures
5. Develop actual program 1.
code
6. Debug the program code 1.

7. Preparing final project report 1.

Table 2- Actual procedure followed

 Program code

#Implementation of Two Player Tic-Tac-Toe game in Python.

theBoard = {'1': ' ' , '2': ' ' , '3': ' ' ,
'4': ' ' , '5': ' ' , '6': ' ' ,
'7': ' ' , '8': ' ' , '9': ' ' }

board_keys = []

for key in theBoard:


board_keys.append(key)

def printBoard(board):
print("\n")
print(' '+board['1'] + ' | ' + board['2'] + ' | ' + board['3'])
print(' ---+---+---')
print(' '+board['4'] + ' | ' + board['5'] + ' | ' + board['6'])
print(' ---+---+---')
print(' '+board['7'] + ' | ' + board['8'] + ' | ' + board['9'])
print("\n")

# Now we'll write the main function which has all the gameplay functionality.
def game():

turn = 'X'
count = 0

for i in range(10):
printBoard(theBoard)
move=input("It's your turn," + turn + ". Move to which place? ")

#move = input()

if theBoard[move] == ' ':


theBoard[move] = turn
count += 1
else:
print("THAT PLACE IS ALREADY FILLED.\nMove to which place?")
continue

# Now we will check if player X or O has won,for every move after 5 moves.
if count >= 5:
if theBoard['1'] == theBoard['2'] == theBoard['3'] != ' ': # across the top
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['4'] == theBoard['5'] == theBoard['6'] != ' ': # across the middle
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['7'] == theBoard['8'] == theBoard['9'] != ' ': # across the bottom
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['7'] == theBoard['4'] == theBoard['1'] != ' ': # down the left side
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['8'] == theBoard['5'] == theBoard['2'] != ' ': # down the middle
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['9'] == theBoard['6'] == theBoard['3'] != ' ': # down the right side
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['1'] == theBoard['5'] == theBoard['9'] != ' ': # diagonal
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break
elif theBoard['7'] == theBoard['5'] == theBoard['3'] != ' ': # diagonal
printBoard(theBoard)
print("\nGAME OVER.\n\n")
print(" ****** CONGRATULATIONS! " +turn + " YOU WON THE GAME
******\n\n")
break

# If neither X nor O wins and the board is full, we'll declare the result as 'tie'.
if count == 9:
print("\nGAME OVER.\n\n")
print("*** IT'S A TIE!! ***\n\n")
break

# Now we have to change the player after every move.


if turn =='X':
turn = 'O'
else:
turn = 'X'

# Now we will ask if player wants to restart the game or not.


restart = input("Do want to play Again?(y/n)")
if restart == "y" or restart == "Y":
for key in board_keys:
theBoard[key] = " "

game()

if name == " main ":


game()

Output:

Fig 1: Tic Tac Toe Game Board


Fig 2: Message displayed if you choose the position which is already chosen

Fig 3: Message displayed after winning the game


Fig 4: Message displayed after losing the game

6.0 Actual Resources Required


The resources used during the completion of project are mentioned in the below

Sr.no Name of resources Specifications Quantity Remarks


material
1. YouTube MP4-file format, 640 x 1
360 pixels
2. Microsoft Word 2010 version 1

3. IDLE Version 3.8.1 1

4. Laptop Dell, RAM 8 GB, 1


Harddisk 1 TB, i3
processor
8.0 Skill Developed/ learning out of this Micro-Project
We learnt,
1. To demonstrate the use of Operators.
2. To perform operations on data structures in Python.
3. To develop functions for given problems.
4. Efficient communication skills.
5. Working as a team member for developing c program.
6. Developing leadership qualities.

9.0 Applications of the Project


1. Thisproject can be used as an interesting game for children to pass their free time.
2. The project can be also used to understand the.
3. The project can be used in learning the

10.0 Reference

www.google.com
www.campusify.co.in

Subject Teacher

You might also like