基于VC的在线联机五子棋游戏设计与实现
目录
基于VC++的在线联机五子棋游戏设计与实现
:https://download.csdn.net/download/sheziqiong/85602532
:https://download.csdn.net/download/sheziqiong/85602532
gobang
五子棋游戏,可双人对战,也可人机对战
前期准备
ege库
codeblocks
功能实现
双人对战
- 黑白方使用鼠标交替落子
- 显示率先连成五子一方的获胜结果
- 返回到菜单
人机对战
- 人类作为黑方先行落子
- AI自动应对
- 显示率先连成五子一方的获胜结果
- 返回到菜单
算法思想
alpha-beta剪枝搜索
max:己方
min:对方
α:max方的当前最优节点
β:min方的当前最优节点
假定:双方都走出最好的一步
α剪枝:如果当前节点的值不比父节点的前兄弟节点的最大值大,则舍去此节点
β剪枝:如果当前节点的子节点的值不比当前的父节点的前兄弟节点中的最小值小则舍弃此节点。
伪代码:
函数设计
评估函数
将棋盘情况转为字符串
判断棋盘棋型
(利用scanlines函数判断是否出现符合预设情况的字符串)
计算得分
成果展示
:https://download.csdn.net/download/sheziqiong/85602532
:https://download.csdn.net/download/sheziqiong/85602532