以下是一个简单的五子棋代码实现,使用Python编写:

import numpy as np

# 创建棋盘
def create_board():
    board = np.zeros((15, 15))
    return board

# 判断落子是否合法
def is_valid_move(board, row, col):
    if board[row][col] == 0:
        return True
    else:
        return False

# 落子
def place_move(board, row, col, player):
    board[row][col] = player

# 判断是否有五子连珠
def is_win(board, player):
    # 判断行
    for i in range(15):
        for j in range(11):
            if board[i][j] == player and board[i][j+1] == player and board[i][j+2] == player and board[i][j+3] == player and board[i][j+4] == player:
                return True
    # 判断列
    for i in range(11):
        for j in range(15):
            if board[i][j] == player and board[i+1][j] == player and board[i+2][j] == player and board[i+3][j] == player and board[i+4][j] == player:
                return True
    # 判断对角线
    for i in range(11):
        for j in range(11):
            if board[i][j] == player and board[i+1][j+1] == player and board[i+2][j+2] == player and board[i+3][j+3] == player and board[i+4][j+4] == player:
                return True
    # 判断反对角线
    for i in range(11):
        for j in range(4, 15):
            if board[i][j] == player and board[i+1][j-1] == player and board[i+2][j-2] == player and board[i+3][j-3] == player and board[i+4][j-4] == player:
                return True
    return False

# 游戏主函数
def play_game():
    board = create_board()
    print(board)
    player = 1
    game_over = False
    while not game_over:
        row = int(input("请输入落子行数:"))
        col = int(input("请输入落子列数:"))
        if is_valid_move(board, row, col):
            place_move(board, row, col, player)
            if is_win(board, player):
                print("玩家", player, "获胜!")
                game_over = True
            player = 3 - player
            print(board)
        else:
            print("落子不合法,请重新输入!")

play_game()

在这个代码中,我们使用numpy库创建了一个15x15的棋盘,使用0表示空位,1表示玩家1的棋子,2表示玩家2的棋子。游戏开始时,轮到玩家1先落子,玩家输入所选落子的行数和列数,程序判断是否合法,如果合法,则将该位置改为玩家的棋子,并判断是否有五子连珠,如果有,则宣布该玩家获胜。如果没有获胜,则轮到另一个玩家落子,直到有一方获胜或者棋盘已经下满。

请帮我用python实现一段五子棋代码

原文地址: https://www.cveoy.top/t/topic/caa4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录