写一个五子棋游戏的代码
时间: 2023-12-01 19:10:27 浏览: 23
好的,以下是一个简单的五子棋游戏代码示例,使用Python语言实现:
```python
import numpy as np
# 创建棋盘
def create_board():
board = np.zeros((15, 15))
return board
# 判断是否有连续的五个棋子
def check_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(board, row, col, player):
board[row][col] = player
# 打印棋盘
def print_board(board):
print(board)
# 主函数
def main():
board = create_board()
player = 1
print_board(board)
while True:
row = int(input("请输入行数:"))
col = int(input("请输入列数:"))
play(board, row, col, player)
print_board(board)
if check_win(board, player):
print("玩家%d获胜!" % player)
break
if player == 1:
player = 2
else:
player = 1
if __name__ == '__main__':
main()
```
这个五子棋游戏的代码比较简单,使用了numpy库来创建棋盘并存储棋子的位置,使用了简单的循环来判断是否有连续的五个棋子。在主函数中,使用了一个while循环来让玩家轮流下棋,直到有玩家获胜或者平局结束游戏。