Ответы на вопрос » компьютеры, ноутбуки и телефоны » Как написать крестики нолики на питоне?
                                 
Задавайте вопросы и получайте ответы от участников сайта и специалистов своего дела.
Отвечайте на вопросы и помогайте людям узнать верный ответ на поставленный вопрос.
Начните зарабатывать $ на сайте. Задавайте вопросы и отвечайте на них.
Закрыть меню
Вопросы без Ответа Радио


Как написать крестики нолики на питоне?


опубликовал 18-08-2023, 13:53
Как написать крестики нолики на питоне?


Ответы на вопрос:

  1. Гена
    Gena 18 августа 2023 15:58

    отзыв нравится 0 отзыв не нравится

    Вот пример кода для игры в крестики-нолики на Python, который включает проверку на победу и ничью:

    def print_board(board):
    print(f" {board[0]} | {board[1]} | ")
        print("---+---+---")
    print(f" {board[3]} | {board[4]} | ")
        print("---+---+---")
    print(f" {board[6]} | {board[7]} | ")

    def check_win(board):
        winning_combinations = [
            [0, 1, 2], [3, 4, 5], [6, 7, 8],  # горизонтальные
            [0, 3, 6], [1, 4, 7], [2, 5, 8],  # вертикальные
            [0, 4, 8], [2, 4, 6]  # диагональные
        ]
        for combination in winning_combinations:
            if board[combination[0]] == board[combination[1]] == board[combination[2]] and board[combination[0]] != "":
                return True
        return False

    def play_game():
        board = [str(i) for i in range(1, 10)]
        print_board(board)
        kol = 0
        player = "X"
      
        while True:
            move = int(input(f"Ход игрока {player}: "))
            if move < 1 or move > 9 or board[move-1] != str(move):
                print("Некорректный ход. Попробуйте снова.")
                continue
            
            board[move-1] = player
            print_board(board)
            kol += 1
            if check_win(board):
                print(f"Крестики/Нолики выиграли! Поздравляем игрока {player}!")
                break
            elif kol == 9:
                print("Ничья!")
                break
            
            player = "O" if player == "X" else "X"  # смена игрока

    play_game()


    В этом примере кода функция `play_game()` отвечает за игровой процесс. Она использует функции `print_board()` для отображения игровой доски, `check_win()` для проверки наличия выигрышной комбинации, и цикл `while` для получения ходов игроков и проверки на победу или ничью.

    По ходу игры, каждый игрок вводит число от 1 до 9, соответствующее свободной клетке на доске. Если ход некорректный (неправильное число или уже занятая клетка), игрок получает сообщение и ему предлагается повторить ход.

    Когда игра окончена, выводится сообщение о победе или ничьей.

    Пожалуйста, обратите внимание, что этот пример кода предназначен для текстового интерфейса в консоли. Если вам нужна графическая версия игры, вам потребуется использовать специальные библиотеки и модули для создания графического интерфейса пользователя (GUI).

    Ссылка на ответ | Все вопросы
    18
    08
Добавить ответ
Ваше Имя:
Ваш E-Mail:
Введите два слова, показанных на изображении: *




Показать все вопросы без ответов >>