0% found this document useful (0 votes)
14 views14 pages

PWP Microproject

The document outlines a micro-project on creating a Tic Tac Toe game using Python, submitted by students Mahee Milind Ugalmugale, Atharva Navnath Chaskar, and Bharti Priya Phoolchand for their Computer Engineering diploma. It includes project objectives, methodologies, programming concepts, and a sample code, emphasizing the educational value and skills developed through the project. The project aims to reinforce programming fundamentals while providing a practical introduction to game development.

Uploaded by

gvmadankar1606
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views14 pages

PWP Microproject

The document outlines a micro-project on creating a Tic Tac Toe game using Python, submitted by students Mahee Milind Ugalmugale, Atharva Navnath Chaskar, and Bharti Priya Phoolchand for their Computer Engineering diploma. It includes project objectives, methodologies, programming concepts, and a sample code, emphasizing the educational value and skills developed through the project. The project aims to reinforce programming fundamentals while providing a practical introduction to game development.

Uploaded by

gvmadankar1606
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Tic Tac Toe.

Submitted in fulfillment of the requirements of


micro-project

Programming with Python

By
“ UGALMUGALE MAHEE MILIND
CHASKAR ATHARVA NAVNATH
BHARTI PRIYA PHOOLCHAND”

ROLL NO:- 31
32
33

ENROLLMENT NO:- 2209640200

2209640201

2209640203

SUBJECT INCHARGE
Mrs. Kirti Tamboli

Computer Engineering Department


Academic Year 2024-2025
CERTIFICATE
This is to certify that the microproject

“Tic Tac Toe.”


is done by

“Mahee Milind Ugalmugale”


“Atharva Navnath Chaskar”
“Bharti Priya Phoolchand”
is submitted for

“Programming with Python”


for
the diploma in Computer Engineering to the

Maharashtra State Board of Technical Education,


Mumbai (Autonomous) (ISO-9001-2008) (ISO/IEC 27001:2013)

Subject Incharge Head of Department

(Mrs. Kirti Tamboli) (Mrs. Smita Kuldiwar)


Tic Tac Toe.
Submitted in fulfillment of the requirements
of micro-project

Programming with Python


By

Roll Name Enrollment Process and Individual Total (10)


No No product Presentation/
assessment work
(6 Marks) (4 marks)
MAHEE 2209640200
MILIND
31 UGALMUGALE

ATHARVA 2209640201
NAVNATH
32 CHASKAR

BHARTI PRIYA 2209640203


PHOOLCHAND
33

SUBJECT INCHARGE
Mrs. Kirti Tamboli

Computer Engineering Department


Academic Year 2024-2025
COMPUTER ENGINEERING DEPARTMENT
VISION AND MISSION OF THE PROGRAMME

Vision: -
To provide technically competent and skilled diploma computer engineers
to fulfill the needs of industry and society.
Mission: -
M1:- To provide industry oriented quality education and training.
M2:- To impart and inculcate theoretical and practical knowledge.
M3:- To provide interpersonal skills and social ethics.
COMPUTER ENGINEERING DEPARTMENT
PROGRAMME OUTCOMES

PO1: Basic and Discipline specific knowledge: Apply knowledge of basic


mathematics, science and engineering fundamentals and engineering specialization to solve
the engineering problems.

PO2: Problem analysis: Identify and analyze well-defined engineering problems


using codified standard methods.

PO3: Design/ Development of solutions: Design solutions for well-defined


technical problems and assist with the design of systems components or processes to
meet specified needs.

PO4: Engineering Tools, Experimentation and Testing: Apply modern


engineering tools and appropriate technique to conduct standard tests and measurements.

PO5: Engineering practices for society, sustainability and environment:


Apply appropriate technology in context of society, sustainability, environment and
ethical practices

PO6: Project Management: Use engineering management principles individually, as


a team member or a leader to manage projects and effectively communicate about well-
defined engineering activities.

PO7: Life-long learning: Ability to analyze individual needs and engage in updating in the
context of technological changes
COMPUTER ENGINEERING DEPARTMENT
PROGRAMME EDUCATIONAL OBJECTIVES
PEO1: Provide socially responsible, environment friendly solutions to
Computer engineering related broad-based problems adapting professional ethics.

PEO2: Adapt state-of-the-art Computer engineering broad-based technologies to work


in multidisciplinary work environments.

PEO3: Solve broad-based problems individually and as a team member


communicating effectively in the world of work.

PROGRAMME SPECIFIC OUTCOMES


PSO1: Computer Software and Hardware Usage: Use state-of-the-art technologies
for operation and application of computer software and hardware.

PSO2: Computer Engineering Maintenance: Maintain computer engineering


related software and hardware systems.
Tic Tac Toe.
Aim:
Make a report on Tic Tac Toe using Python Programming.

Course Outcomes:

❖ Display message on screen using Python script on IDE.


❖ Develop Python program to demonstrate use of Operators.
❖ Develop functions for given problems.
❖ Design classes for given problem.
❖ Handle exceptions.

Proposed Methodology:
❖ Define the project scope.
❖ Tools and Libraries.
❖ Advanced Features.
❖ Analytics and Tracking.
❖ Testing and debugging.
❖ Depleoyment.

Action Plan:

Sr. Detail of activity Plan Start Date Plan Finish Date


No.

1. Searching of Topic 25-02-2025 25-02-2025

2. Gathering information 26-02-2025 03-03-2025

3. Report Making 03-03-2025 07-03-2025

Subject In-charge
(Mrs. Kirti Tamboli)
Tic Tac Toe.
Rationale:

Creating a Tic-Tac-Toe game in Python is an excellent way to reinforce fundamental programming


concepts such as variables, control flow, loops, and functions. It provides hands-on experience with
data structures like lists and dictionaries while improving problem-solving and logical thinking skills.
The project helps in understanding game loops, state management, and user input validation, making
it a great introduction to game development. Additionally, it allows for enhancements like AI
opponents, a graphical user interface (GUI), or even an online multiplayer mode, making it a scalable
learning experience for both beginners and intermediate programmers.

Literature:

Various books, research papers, and online tutorials cover Tic-Tac-Toe development in Python, from basic
implementation to AI strategies. Automate the Boring Stuff with Python and Invent Your Own Computer
Games with Python offer beginner-friendly guides, while Artificial Intelligence with Python explores
advanced AI techniques like Minimax. Research papers on game theory, such as The Minimax Algorithm in
Game Theory, provide deeper insights into AI decision-making. Online resources like Geeks for Geeks and
Real Python offer tutorials, while Stack Overflow helps with troubleshooting. These sources provide a strong
foundation for building and enhancing Tic-Tac-Toe in Python.

Actual Methodology Followed:

Topi Work Done Data Work Done By


c

1. Searching of topic (A Detail Study of schemes of Mahee Milind


different banks for Ugalmugale
Entrepreneurship Promotion)

2. Gathering of Information (Rationale, Aim, Applications, Priya Phoolchand


etc.) Bharti

3. Execution of Program Gathering information Atharva Navnath


about the topic Chaskar

4. Report Making Finalization of Mahee Milind


report Ugalmugale

Resources Required

Sr. Name of Resources Specification Qty. Remark


No.

1. Computer Intel i3, 4GB RAM or above 1 -

2. MS-Word Office 2007 or above 1 -

3. Internet Google,Youtube 1 -
Tic Tac Toe.
Program Code:-
# Tic Tac Toe Game in Python
def print_board(board):
"""Prints the curret state of the board."""
for row in board:
print(" | ".join(row))
print("-" * 9)
def check_winner(board, player):
"""Checks if the given player has won."""
for row in board:
if all(cell == player for cell in row):
return True
for col in range(3):
if all(board[row][col] == player for row in range(3)):
return True
if all(board[i][i] == player for i in range(3)) or all(board[i][2 - i] == player for i in range(3)):
return True
return False
def check_tie(board):
"""Checks if the game is a tie."""
return all(cell != " " for row in board for cell in row)
def tic_tac_toe():
"""Main function to play the game."""
board = [[" " for _ in range(3)] for _ in range(3)]
players = ["X", "O"]
current_player = 0
print("Welcome to Tic Tac Toe!")
while True:
print(f"Player {players[current_player]}'s turn.")
row, col = map(int, input("Enter row and column (1-3) separated by space: ").split())
if row < 1 or row > 3 or col < 1 or col > 3 or board[row - 1][col - 1] != " ":
print("Invalid move. Try again.")
continue
except ValueError:
print("Invalid input. Enter numbers between 1-3.")
continue
board[row - 1][col - 1] = players[current_player]
print_board(board)
if check_winner(board, players[current_player]):
print(f"Player {players[current_player]} wins!")
break
elif check_tie(board):
print("It's a tie!")
break
current_player = (current_player + 1) % 2
if __name__ == "__main__":
tic_tac_toe()
Output:-
Conclusion:
The Tic-Tac-Toe game project demonstrates how programming concepts can be applied to create an
interactive and functional application. By implementing this project, students gain hands-on experience in
designing algorithms, managing game logic, and integrating user interfaces using Python libraries like Tkinter
or Pygame. It showcases the importance of problem-solving, debugging, and code organization in software
development. Overall, this project serves as a practical introduction to building real-world applications while
reinforcing foundational programming skills.
Skill Developed:

❖ Programming Logic: Understanding conditional statements, loops, and functions to manage game
flow.
❖ Object-Oriented Programming (OOP): Designing classes for game components like the board and
player logic.
❖ GUI Development: Using libraries such as Tkinter or Pygame to create user-friendly interfaces.
❖ Algorithm Design: Implementing winning condition checks and handling tie scenarios.
❖ Debugging: Identifying and resolving errors in game logic or user input handling.

Application:

❖ Educational Tool: It serves as an excellent beginner-level project for learning Python programming
concepts.
❖ Game Development Basics: Provides a foundation for creating more complex games by
introducing GUI design, event handling, and logic implementation.
❖ AI Integration: The game can be extended with artificial intelligence to challenge players, teaching
concepts like minimax algorithms.
❖ Entertainment: As a simple yet engaging two-player game, it offers recreational value for users of
all ages.
❖ Portfolio Project: Showcasing this project demonstrates programming proficiency to potential
employers or academic evaluators.

Subject In-charge
(Mrs. Kirti Tamboli)

You might also like