วิธีสร้างเกม Tic Tac Toe ใน Python พร้อมตัวอย่างโค้ด
เกม Tic Tac Toe ใน Python เป็นโครงการที่น่าสนใจที่คุณสามารถลองทำได้ เป็นโครงการที่สนุกและเจ๋งเกี่ยวกับการแก้ปัญหาและสามารถช่วยให้คุณเชี่ยวชาญแนวคิดพื้นฐานได้ Python- การสร้างเกมโอเอกซ์แสนสนุกจะช่วยให้คุณพัฒนาทักษะได้
คุณสามารถใช้สิ่งที่ดี Python โปรแกรมแก้ไขเช่น Pycharm หรืออินเทอร์เฟซบรรทัดคำสั่ง
วิธีเล่นเกม Tic Toc?
เกม Tic Tac Toe เป็นเกมเล่นสองคนง่ายๆ ที่ใครๆ ก็สามารถเล่นได้โดยไม่ต้องใช้กระดานเกม มันเกี่ยวข้องกับผู้เล่นสองคนทำเครื่องหมายเซลล์ที่แตกต่างกันจนกว่าเกมจะจบลงไม่ว่าจะชนะหรือเสมอกัน
ต่อไปนี้เป็นวิธีการเล่นเกม Tic Tac Toe
ขั้นตอน 1) เกมโอเอกซ์เริ่มต้นด้วยเซลล์ว่างในตารางสี่เหลี่ยม นี่คือกระดานทิกแทคโท
ขั้นตอน 2) ผู้เล่นทั้งสองเลือกจากสองสัญลักษณ์ โดยปกติคือ Xs หรือ Os คุณสามารถใช้สัญลักษณ์พิเศษอื่น ๆ ในเกมได้
ขั้นตอน 3) ผู้เล่นคนปัจจุบันจะสลับกันโดยการกรอกเซลล์ของกระดานโอเอกซ์จนกว่าผู้เล่นจะเติมชุดค่าผสมที่ชนะ นั่นคือทั้งแถว คอลัมน์ หรือแนวทแยงที่มีเครื่องหมายเดียวกัน
ขั้นตอน 4) เกมเสมอกันก็เป็นไปได้ในกรณีที่เซลล์ทั้งหมดเต็มโดยไม่มีผู้ชนะที่ชัดเจน
ข้อกำหนด
อาคาร นิ้วเท้า tic tac Python โครงการ ต้องมีความเข้าใจในระดับเริ่มต้นของ Python ภาษาโปรแกรม ซึ่งรวมถึงการทำความเข้าใจลูปและการวนซ้ำ “for” และคำสั่ง if ใดบ้างที่ถูกนำมาใช้ Python.
คุณยังต้องมี Python และ Python โปรแกรมแก้ไขข้อความที่ติดตั้งบนคอมพิวเตอร์ของคุณเพื่อทำให้โอเอกซ์สมบูรณ์ Python โครงการ. เนื่องจากนี่คือเกมโอเอกซ์ระดับเริ่มต้น Pythonคุณไม่จำเป็นต้องมีเลย Python ห้องสมุด.
คุณอาจต้องมีทักษะในการดีบักเพื่อค้นหาวิธีแก้ไขจุดบกพร่องในโค้ดของคุณและคุณควรมีความเข้าใจองค์ประกอบของเกมอย่างเพียงพอ
Tic Tac Toe Python ขั้นตอนวิธี
ทำตามขั้นตอนเหล่านี้เพื่อสร้างเกมโอเอกซ์ Python ภาษาการเขียนโปรแกรม:
ขั้นตอน 1) สร้างกระดานเพื่อเริ่มเกมโอเอกซ์
ขั้นตอน 2) ขอให้ผู้ใช้ตัดสินใจเกี่ยวกับขนาดกระดานเกม
ขั้นตอน 3) สุ่มเลือกผู้เล่นคนแรก
ขั้นตอน 4) เกมโอเอกซ์เริ่มต้นขึ้น
ขั้นตอน 5) ผู้เล่นเล่นโดยเลือกจุดว่างบนกระดาน
ขั้นตอน 6) เติมจุดว่างที่เลือกด้วยสัญลักษณ์ของผู้เล่น
ขั้นตอน 7) พิจารณาว่าผู้เล่นชนะหรือเสมอกันในเกมโดยใช้ตรรกะของเกม
ขั้นตอน 8) แสดงกระดานเกมหลังการเล่นทุกครั้ง หากไม่มีผู้เล่นคนใดชนะหรือเสมอกับผู้เล่นคนที่สอง
ขั้นตอน 9) แสดงข้อความเสมอหรือชนะตามลำดับ
ขั้นตอน 10) จบเกมโอเอกซ์ด้วยตัวเลือกในการเริ่มเกมใหม่
เต็ม Python รหัสสำหรับนิ้วเท้าแทค
# Guru99
# Code developed by Guru99.com
# Guru99 tic-tac-toe game
#Get input
def getInput(prompt, cast=None, condition=None, errorMessage=None):
while True:
try:
val = cast(input(prompt))
assert condition is None or condition(val)
return val
except:
print(errorMessage or "Invalid input.")
# Print the game board
def printBoard(board):
print()
for row in board:
print(*row)
print()
# Check if player won using the winning combinations
def checkWin(board):
# Check rows
for row in range(len(board)):
for col in range(len(board)-1):
if board[row][col] == "_" or board[row][col+1] == "_" or board[row][col] != board[row][col+1]:
break
else:
return True
# Check column numbers
for col in range(len(board)):
for row in range(len(board)-1):
if board[row][col] == "_" or board[row+1][col] == "_" or board[row][col] != board[row+1][col]:
break
else:
return True
# Check left diagonal
for cell in range(len(board)-1):
if board[cell][cell] == "_" or board[cell+1][cell+1] == "_" or board[cell][cell] != board[cell+1][cell+1]:
break
else:
return True
# Check right diagonal
for cell in range(len(board)-1):
emptyCell = board[cell][len(board)-cell-1] == "_" or board[cell+1][len(board)-cell-2] == "_"
different = board[cell][len(board)-cell-1] != board[cell+1][len(board)-cell-2]
if emptyCell or different:
break
else:
return True
# No win
return False
# Play tic tac toe game
def play():
# Introduction
print("------------\nN-DIMENSIONAL TIC TAC TOE game by guru 99.com \n------------")
# Set up variables
N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
cast=int,
condition=lambda x: x >= 3,
errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
board = [['_'] * N for _ in range(N)]
used = 0
turn = 0
# Play guru99 tic tac toe game in Python using while infinite loop
while True:
# Print guru99 tic tac toe game board
printBoard(board)
# Get user pick
pick = getInput(prompt=f"Player {turn+1} - Pick location (row, col): ",
cast=lambda line: tuple(map(int, line.split(" "))),
condition=lambda pair: min(pair) >= 0 and max(pair) < N and board[pair[0]][pair[1]] == "_",
errorMessage="Invalid input. Please enter a valid, unoccupied location as an integer pair.")
# Populate location
board[pick[0]][pick[1]] = "X" if turn == 0 else "O"
used += 1
# Check for win
#Guru99 tutorial
if checkWin(board):
printBoard(board)
print(f"Game over, Player {turn+1} wins.")
break
# Check for tie
elif used == N*N:
printBoard(board)
print("Game over. Players have tied the match.")
print("Guru99.com tic tac toe game ")
break
# If no win yet, update next user
turn = (turn+1)%2
# Check for rematch
playAgain = getInput(prompt="Play Guru99 tic tac toe_Game again? (y/n): ",
cast=str,
condition=lambda ans: ans.strip("\n").lower() in {"y", "n"},
errorMessage="Invalid input. Please enter 'y' or 'n'.")
if playAgain == 'n':
# End the game
print("\nGuru99 TicTacToe game ended.")
return
else:
# Rematch
play()
# Main
if __name__ == '__main__':
play()
Tic Tac Toe Python เอาต์พุตรหัส
เมื่อคุณรันซอร์สโค้ดด้านบนแล้ว ด้านล่างนี้คือผลลัพธ์ที่คาดหวังสำหรับบอร์ดทิกแทคโทขนาด 3 X 3:
------------ N-DIMENSIONAL TIC TAC TOE game by guru 99.com ------------ Guru99 says>>> Enter N, the dimensions of the board: 3 _ _ _ _ _ _ _ _ _ Player 1 - Pick location (row, col): 1 1 _ _ _ _ X _ _ _ _ Player 2 - Pick location (row, col): 0 1 _ O _ _ X _ _ _ _ Player 1 - Pick location (row, col): 1 2 _ O _ _ X X _ _ _ Player 2 - Pick location (row, col): 0 2 _ O O _ X X _ _ _ Player 1 - Pick location (row, col): 1 0 _ O O X X X _ _ _ Game over, Player 1 wins. Play Guru99 tic tac toe_Game again? (y/n):
การแบ่งรหัสแบบเต็ม
การสร้าง ติ๊ก แทค โท อิน Python เป็นเรื่องง่าย เรามาวิเคราะห์ฟังก์ชันต่างๆ กันเป็นบิตเพื่อทำความเข้าใจว่าเกิดอะไรขึ้นในแต่ละบรรทัด:
การพิมพ์กระดาน
กระดานทิกแทคโทคือส่วนแสดงเกมหลัก ใน, Python หน้าต่างแสดงผลใช้เพื่อแสดงกระดานเกม
ต่อไปนี้เป็นขั้นตอนที่ช่วยคุณสร้างกระดานสำหรับ Tic Tac Toe Python:
Python รหัสสำหรับ Tic Tac Toe
def getInput(prompt, cast=None, condition=None, errorMessage=None):
while True:
try:
val = cast(input(prompt))
assert condition is None or condition(val)
return val
except:
print(errorMessage or "Invalid input.")
# Print the board
def printBoard(board):
print()
for row in board:
print(*row)
print()
N = getInput(prompt="Guru99 says>>> Enter N, the dimensions of the board: ",
cast=int,
condition=lambda x: x >= 3,
errorMessage="Invalid input. Please enter an integer greater than or equal to 3 as explained on guru99.com")
board = [['_'] * N for _ in range(N)]
used = 0
turn = 0
printBoard(board)
รหัสเอาท์พุท:
------------ N-DIMENSIONAL TIC TAC TOE game by guru 99.com ------------ Guru99 says>>> Enter N, the dimensions of the board: 3 _ _ _ _ _ _ _ _ _
เกม Tic Tac Toe – การจัดการที่ชนะ
เพื่อตรวจสอบว่าผู้เล่นคนใดชนะหรือไม่ เราจำเป็นต้องตรวจสอบชุดค่าผสมที่ชนะในแถว คอลัมน์ และแนวทแยง หากมีผู้ชนะ เราต้องแสดงข้อความแห่งชัยชนะ
แถว
- สำหรับแถว ฟังก์ชันจะใช้คอลัมน์ทุกคู่ติดต่อกันและตรวจสอบชุดค่าผสมที่ชนะ
- ผู้เล่นคนแรกที่เติมแถวเป็นผู้ชนะ ผู้เล่นคนที่สองจึงแพ้
- ถ้าคู่ของคอลัมน์ต่อเนื่องกันเหมือนกัน แสดงว่าองค์ประกอบทั้งหมดภายในแถวนั้นเหมือนกัน
- หากทั้งสองรายการต่างกันหรือแถวมีเซลล์ว่าง ก็ยังไม่มีผู้ชนะ
- จากนั้นเราจะใช้เงื่อนไขการสูญเสียและเพิ่มการหยุดพัก หากเงื่อนไขการแพ้เหล่านี้เป็นจริง แสดงว่าเราไม่มีผู้ชนะในแถวที่ทำเครื่องหมายไว้
- คำสั่ง else ให้ผลตอบแทนที่แท้จริงเพื่อแสดงว่ามีผู้ชนะ
- ตัวแบ่งจะแยกออกจากวงนี้เพื่อไปยังแถวถัดไป
คอลัมน์
สำหรับคอลัมน์ เราจะทำซ้ำฟังก์ชันเดียวกันกับในแถว เราตรวจสอบว่าผู้เล่นชนะหลังจากผู้เล่นแต่ละคนเลือกสถานที่ของตนแล้วหรือไม่
แถวทแยงชนะ
สำหรับเส้นทแยงมุมซ้าย งานจะง่ายขึ้น เราจะเปรียบเทียบเซลล์ในเส้นทแยงมุมเสมอ อย่างไรก็ตาม ในกรณีที่ไม่มีผู้ชนะ เราสามารถดำเนินการตามคำแนะนำถัดไปได้
เล่นเกมตรรกะ
นี่คือฟังก์ชั่นหลักของเกม สำหรับสิ่งนี้เราสามารถใช้ตัวแปรที่เก็บข้อมูล
- ตัวแปรแรกคือขนาดบอร์ดที่จัดเก็บไว้ใน "N" เกมจะได้ขนาดกระดานหลังจากขอให้ผู้ใช้กรอกตัวเลข
- ดังนั้นเมื่อคุณป้อนค่า ระบบจะประมวลผลค่านั้น
- นอกจากนี้เรายังสร้างข้อความแสดงข้อผิดพลาดเพื่อแสดงให้ผู้เล่นทราบเมื่อมีการพิมพ์หมายเลขที่ไม่ถูกต้อง
- จากนั้นเราสามารถสร้างตัวแปรสองตัวที่เติม "X" หรือ "O" เมื่อเติมเซลล์
- จากนั้นให้ผู้เล่นดูกระดานเกม หลังจากนี้ ให้รับข้อมูลจากผู้เล่น
- ตรรกะจะทำเครื่องหมายเซลล์ที่เลือกว่าเต็มแล้ว และตรวจดูว่าชนะหรือเสมอกัน
- หากไม่มีผู้ชนะ เกมจะขอให้ผู้เล่นคนถัดไปเล่น หากมีชนะหรือเสมอ เกมสามารถถามผู้ใช้ว่าต้องการเกมใหม่หรือไม่
สรุป
- Tic Tac Toe เป็นเกมที่สนุกสำหรับผู้เล่นสองคนโดยการวางสัญลักษณ์เฉพาะลงในช่องกระดานว่าง
- การสร้างเกมโอเอกซ์ Python ต้องมีความเข้าใจในระดับเริ่มต้นของ Python, โปรแกรมแก้ไขข้อความ และ Python การติดตั้ง
- อัลกอริธึมช่วยให้คุณเขียนโค้ดเป็นภาษาใดก็ได้อย่างเป็นระบบ
- ในการสร้างเกม ขั้นแรกให้วาดกระดานและเขียนโค้ดเพื่อกำหนดว่าจะแพ้หรือชนะ
- คุณสามารถทดสอบรหัสโอเอกซ์ได้ Python โดยการเล่นมันก่อน
