91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

python最簡單的五子棋代碼怎么寫

小億
230
2024-06-04 18:13:27
欄目: 編程語言

下面是一個簡單的五子棋游戲的Python代碼示例:

def print_board(board):
    for row in board:
        print(' '.join(row))

def check_win(board, player):
    for i in range(5):
        for j in range(5):
            if board[i][j] == player:
                # 檢查橫向是否有五子相連
                if j + 4 < 5 and all(board[i][j+k] == player for k in range(5)):
                    return True
                # 檢查縱向是否有五子相連
                if i + 4 < 5 and all(board[i+k][j] == player for k in range(5)):
                    return True
                # 檢查斜向是否有五子相連
                if i + 4 < 5 and j + 4 < 5 and all(board[i+k][j+k] == player for k in range(5)):
                    return True
                # 檢查反斜向是否有五子相連
                if i + 4 < 5 and j - 4 >= 0 and all(board[i+k][j-k] == player for k in range(5)):
                    return True
    return False

def main():
    board = [['.' for _ in range(5)] for _ in range(5)]
    player = 'X'

    while True:
        print_board(board)
        move = input(f"Player {player}, enter your move (row col): ")
        row, col = map(int, move.split())

        if board[row][col] == '.':
            board[row][col] = player
            if check_win(board, player):
                print_board(board)
                print(f"Player {player} wins!")
                break
            player = 'O' if player == 'X' else 'X'
        else:
            print("Invalid move, try again.")

if __name__ == '__main__':
    main()

這個代碼實現了一個簡單的五子棋游戲,玩家交替下棋,當有任意一方連成五子時游戲結束并宣布勝利。玩家通過輸入行列坐標來下棋,游戲會在控制臺輸出當前棋盤狀態。

0
阳东县| 彝良县| 逊克县| 华阴市| 达拉特旗| 济阳县| 商南县| 介休市| 洞头县| 镇赉县| 韶山市| 台前县| 永清县| 长寿区| 肥乡县| 余庆县| 浠水县| 蓝田县| 上栗县| 丹巴县| 泰顺县| 大余县| 涟源市| 南平市| 水城县| 广东省| 合山市| 怀仁县| 东丽区| 陵川县| 深州市| 财经| 和顺县| 淮滨县| 文成县| 安泽县| 胶州市| 舟山市| 疏附县| 沾益县| 杭州市|