วิธีสร้างเกม 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 โดยการเล่นมันก่อน