Jak zrobić grę w kółko i krzyżyk Python w Code Przykład
⚡ Inteligentne podsumowanie
Kółko i krzyżyk w Python To przyjazny dla początkujących projekt, który odtwarza klasyczną grę planszową dla dwóch graczy. Jego tworzenie wzmacnia podstawowe umiejętności, takie jak pętle, instrukcje warunkowe, listy, funkcje i rekursja, a jednocześnie sprawdza wiersze, kolumny i przekątne, aby wyłonić zwycięzcę.

Gra w kółko i krzyżyk Python To ciekawy projekt, który możesz wypróbować. To fajny i zabawny projekt rozwiązywania problemów, który może pomóc Ci opanować podstawowe koncepcje. PythonStworzenie zabawnej gry w kółko i krzyżyk pomoże Ci rozwinąć umiejętności.
Możesz skorzystać z dobrego Python redaktor np PyCharm lub interfejsu wiersza poleceń.
Jak grać w kółko i krzyżyk?
Kółko i krzyżyk to prosta gra dla dwóch graczy, w którą każdy może grać bez potrzeby posiadania planszy. Dwóch graczy zaznacza różne pola, aż gra zakończy się wygraną lub remisem.
Oto instrukcja gry w kółko i krzyżyk.
Krok 1) Gra w kółko i krzyżyk zaczyna się od pustych pól w kwadratowej siatce. To jest plansza 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) Aktualny gracz zaznacza kolejne pola planszy do gry w kółko i krzyżyk, aż znajdzie zwycięską kombinację. Oznacza to cały rząd, kolumnę lub przekątną z tym samym znakiem.
Krok 4) Remis jest również możliwy w przypadku, gdy wszystkie komórki są zapełnione i nie ma oczywistego zwycięzcy.
wymagania
Budowanie kółka i krzyżyka Python projekt wymaga zrozumienia na poziomie początkującym Python Język programowania. Obejmuje zrozumienie pętli „for” i iteracji oraz tego, do czego służy 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 potrzebować żadnego Python biblioteka.
Aby znaleźć rozwiązania błędów w kodzie, możesz potrzebować pewnych umiejętności debugowania, a także powinieneś mieć odpowiednią wiedzę na temat komponentów gry.
Tic Tac Toe Python Algorytm
Aby utworzyć grę w kółko i krzyżyk, wykonaj następujące kroki: 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, mając możliwość 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 Code wydajność
Po uruchomieniu powyższego kodu źródłowego, poniżej przedstawiono oczekiwany wynik dla planszy do gry w kółko i krzyżyk 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):
Pełny Code awaria
Tworzenie Kółko i krzyżyk w Python To proste. Rozłóżmy na czynniki pierwsze różne funkcje, aby zrozumieć, co się dzieje w każdym wierszu:
Drukowanie planszy
Plansza do gry w kółko i krzyżyk jest głównym wyświetlaczem gry. Python, do prezentacji planszy do gry używane jest okno wyświetlacza.
Oto kroki, które pomogą Ci stworzyć planszę 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)
Code wydajność:
------------ 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żeli 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
W przypadku lewej przekątnej zadanie staje się prostsze. Zawsze będziemy porównywać komórki na przekątnych. Jeśli jednak nie ma zwycięzcy, możemy przejść do następnej 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.
