Jak zrobić grę w kółko i krzyżyk Python z przykładem kodu
Gra w kółko i krzyżyk Python to ciekawy projekt, którego możesz spróbować. To fajny i zabawny projekt rozwiązywania wyzwań, który może pomóc ci opanować podstawowe koncepcje Python. Stworzenie zabawnej gry w kółko i krzyżyk pomoże Ci rozwinąć swoje umiejętności.
Możesz skorzystać z dobrego Python edytor, taki jak Pycharm lub interfejs wiersza poleceń.
Jak grać w grę Tic Toc?
Gra w kółko i krzyżyk to prosta gra dla dwóch graczy, w którą każdy może grać bez konieczności posiadania planszy. Polega na tym, że dwóch graczy zaznacza różne komórki, aż do zakończenia gry, w wyniku wygranej lub remisu.
Oto jak grać w grę w kółko i krzyżyk.
Krok 1) Gra w kółko i krzyżyk rozpoczyna się od pustych komórek w kwadratowej siatce. To jest tablica do gry w kółko i krzyżyk.
Krok 2) Obaj gracze wybierają jeden z dwóch symboli, zwykle X lub Os. Możesz użyć dowolnego innego unikalnego symbolu w grze.
Krok 3) Obecny gracz zaznacza swoje tury, wypełniając komórki planszy do gry w kółko i krzyżyk, aż któryś z graczy ułoży zwycięską kombinację. Oznacza to cały wiersz, kolumnę lub przekątną z tym samym znakiem.
Krok 4) Remis w grze jest również możliwy w przypadku, gdy wszystkie komórki są zajęte i nie ma wyraźnego zwycięzcy
wymagania
Budowanie kółko i krzyżyk Python projekt wymaga zrozumienia na poziomie początkującym Python język programowania. Obejmuje zrozumienie pętli i iteracji „for” oraz tego, w jakim celu używana jest instrukcja if Python.
Musisz też mieć Python oraz Python edytor tekstu zainstalowany na komputerze, aby ukończyć grę w kółko i krzyżyk Python projekt. Ponieważ jest to gra w kółko i krzyżyk dla początkujących Python, nie będziesz ich potrzebować Python biblioteka.
Aby znaleźć rozwiązanie błędów w kodzie, możesz potrzebować pewnych umiejętności debugowania. Powinieneś także posiadać odpowiednią wiedzę na temat komponentów gry.
Tic Tac Toe Python Algorytm
Wykonaj poniższe kroki, aby stworzyć grę w kółko i krzyżyk Python język programowania:
Krok 1) Utwórz planszę, aby rozpocząć grę w kółko i krzyżyk.
Krok 2) Poproś użytkownika o określenie wymiarów planszy do gry.
Krok 3) Losowo wybierz pierwszego gracza.
Krok 4) Rozpoczyna się gra w kółko i krzyżyk.
Krok 5) Gracze grają, wybierając puste miejsce na planszy.
Krok 6) Wypełnij puste wybrane miejsce znakiem gracza.
Krok 7) Określ, czy gracz wygrywa, czy remisuje w grze, korzystając z logiki gry.
Krok 8) Wyświetl planszę po każdej rozgrywce, jeśli żaden z graczy nie wygra lub nie zremisuje z drugim graczem.
Krok 9) Wyświetl odpowiednio komunikat o remisie lub wygranej.
Krok 10) Zakończ grę w kółko i krzyżyk z opcjami rozpoczęcia nowej gry.
Pełny Python kod do gry w kółko i krzyżyk
# 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 Wyjście kodu
Po uruchomieniu powyższego kodu źródłowego poniżej znajduje się oczekiwany wynik dla tablicy 3 X 3 w kółko i krzyżyk:
------------ 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):
Pełny podział kodu
Tworzenie gra w kółko i krzyżyk Python jest proste. Przeanalizujmy różne funkcje w bitach, aby zrozumieć, co dzieje się w każdej linii:
Drukowanie planszy
Tablica „Kółko i krzyżyk” jest głównym wyświetlaczem gry. W, Python Okno wyświetlacza służy do pokazywania planszy gry.
Oto kroki, które pomogą Ci stworzyć tablicę do gry w kółko i krzyżyk Python:
Python kod do gry w kółko i krzyżyk
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)
Dane wyjściowe kodu:
------------ N-DIMENSIONAL TIC TAC TOE game by guru 99.com ------------ Guru99 says>>> Enter N, the dimensions of the board: 3 _ _ _ _ _ _ _ _ _
Gra w kółko i krzyżyk – zwycięski układ
Aby sprawdzić, czy któryś z graczy wygrał, musimy sprawdzić zwycięskie kombinacje w rzędach, kolumnach i po przekątnych. Jeśli zostanie zwycięzca, musimy pokazać zwycięską wiadomość.
Wydziwianie
- W przypadku wiersza funkcja pobiera każdą kolejną parę kolumn i sprawdza zwycięską kombinację.
- Pierwszy gracz, który wypełni rzędy, wygrywa. W ten sposób drugi gracz przegrywa.
- Jeśli para kolejnych kolumn jest taka sama, to oczywiste jest, że wszystkie elementy w tym wierszu są takie same.
- Jeśli dwa z nich są różne lub wiersz zawiera pustą komórkę, nadal nie ma zwycięzcy.
- Następnie wdrażamy warunki przegrywające i dodajemy przerwę. Jeśli którykolwiek z tych warunków przegranej jest spełniony, w zaznaczonym rzędzie nie ma zwycięzcy.
- Instrukcja else daje prawdziwy zwrot, pokazując, że istnieje zwycięzca.
- Przerwa przerywa tę pętlę i przechodzi do następnego wiersza.
kolumny
Dla kolumn powtarzamy tę samą funkcję jak w wierszach. Po wybraniu przez każdego gracza swojego miejsca, sprawdzamy, czy gracz wygrał.
Wygrywa rząd ukośny
Dla lewej przekątnej zadanie staje się prostsze. Zawsze będziemy porównywać komórki na przekątnych. Jeżeli jednak nie zostanie wyłoniony zwycięzca, możemy przejść do kolejnej instrukcji.
Zagraj w logikę gry
To jest główna funkcja gry. W tym celu możemy wykorzystać zmienne przechowujące informacje.
- Pierwszą zmienną jest rozmiar płytki zapisany w „N”. Gra uzyska rozmiar planszy po poproszeniu użytkownika o wprowadzenie liczby.
- Zatem po wprowadzeniu wartości jest ona przetwarzana.
- Tworzymy również komunikat o błędzie, aby pokazać graczom, gdy zostanie wpisany nieprawidłowy numer.
- Następnie możemy utworzyć dwie zmienne, które po wypełnieniu komórki wpisują „X” lub „O”.
- Następnie pokaż graczom planszę. Następnie pobierz dane wejściowe gracza.
- Następnie logika oznaczy wybraną komórkę jako wypełnioną i sprawdzi wygraną lub remis.
- Jeśli nie ma zwycięzcy, gra prosi następnego gracza o grę. W przypadku wygranej lub remisu gra może zapytać użytkowników, czy chcą nowej gry.
Podsumowanie
- Kółko i krzyżyk to zabawna gra dla dwóch graczy, w którą można grać poprzez umieszczenie unikalnego symbolu w pustej komórce planszy.
- Tworzenie gry w kółko i krzyżyk w Python wymaga zrozumienia na poziomie początkującym Python, edytor tekstu i Python zainstalowany.
- Algorytm pomaga systematycznie pisać kod w dowolnym języku.
- Aby stworzyć grę, najpierw narysuj planszę i napisz kod określający układ wygranej i przegranej
- Możesz przetestować kod w kółko i krzyżyk Python najpierw grając.