写一个五子棋游戏,给出程序
时间: 2023-05-11 09:05:48 浏览: 42
五子棋游戏的程序代码非常复杂,在这里只能给出一些参考代码。
以下是用 Python 实现的五子棋游戏代码:
```
board = [[0 for _ in range(15)] for _ in range(15)]
def check_win(x, y, player):
# check horizontal
count = 1
for i in range(1, 5):
if y + i < 15 and board[x][y+i] == player:
count += 1
else:
break
for i in range(1, 5):
if y - i >= 0 and board[x][y-i] == player:
count += 1
else:
break
if count >= 5:
return True
# check vertical
count = 1
for i in range(1, 5):
if x + i < 15 and board[x+i][y] == player:
count += 1
else:
break
for i in range(1, 5):
if x - i >= 0 and board[x-i][y] == player:
count += 1
else:
break
if count >= 5:
return True
# check diagonal
count = 1
for i in range(1, 5):
if x + i < 15 and y + i < 15 and board[x+i][y+i] == player:
count += 1
else:
break
for i in range(1, 5):
if x - i >= 0 and y - i >= 0 and board[x-i][y-i] == player:
count += 1
else:
break
if count >= 5:
return True
count = 1
for i in range(1, 5):
if x + i < 15 and y - i >= 0 and board[x+i][y-i] == player:
count += 1
else:
break
for i in range(1, 5):
if x - i >= 0 and y + i < 15 and board[x-i][y+i] == player:
count += 1
else:
break
if count >= 5:
return True
return False
def play(x, y, player):
board[x][y] = player
if check_win(x, y, player):
print(f"Player {player} wins!")
return True
return False
# example usage
play(7, 7, 1)
play(7, 8, 2)
play(8, 8, 1)
play(8, 9, 2)
play(9, 9, 1)
play(9, 10, 2)
```
这个代码是一个简单的五子棋游戏实现,它利用了一个二维数组来