python 黑白棋_python棋类游戏编写入门

本文为初学者介绍棋类游戏程序编写的基本流程,包括主程序流程、计算机走子策略及打分方式。以井字棋、黑白棋和五子棋为例,详细解释如何通过简单策略实现计算机自动走子。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚接触棋类游戏程序编写的朋友,往往比较迷惑,不知从何下手。

本文总结了棋类游戏的主程序流程、计算机走子策略、打分方式(以井字棋、黑白棋、五子棋为例),未使用minimax算法,比较简单,适合刚接触的朋友。特记录如下:

作者:hhh5460

本文地址:https://www.cnblogs.com/hhh5460/p/10114236.html

一、主程序流程

所有双人对战棋类游戏在人机模式下的主程序流程几乎雷同。

流程:

1.初始化棋盘

2.确定玩家,执黑先走

3.进入循环

4.打印棋盘、提示走子、(显示得分?)

5.思考走法、放弃终止

6.落子、(吃子?、翻棋?)

7.判断局面、是否终止、(是否轮换?)

8.切换棋手

9.游戏结束,返回信息

二、计算机走子策略

1.对所有合法的走子位置“打分”

2.取分值最高的走子位置

3.再取行最小的,若行相等,再取列最小的

三、“打分”方式

注意:同一个点位,双方的棋型分都要加上!!

1.井字棋

棋型分值:

三连 100

活二 10

活一 1

2.黑白棋

翻了对方棋子的数目、或者翻了对方棋子的权重之和

3.五子棋

棋型分值:

0.活五 +100000

1.死五 +100000

2.活四 +10000

3.死四 +1000

4.活三 +1000

5.死三 +100

6.活二 +100

7.死二 +10

8.活一 +10

9.死一 +2

特别说明:

10.跳连 两边棋型分相加 + 上一级分值的20% ?商榷

四、确定棋型

方法是,从当前落子位置向周围八个方向搜索。

注意,黑白棋八个方向是独立考虑的,而井字棋与五子棋八个方向的相反方向要放在一起考虑。

五、棋力分析

这种按照最高得分走棋的策略,就是我们下棋时常说的:贪吃,即贪婪模式。棋力不会太高,属于入门水平

六、代码

(未公布)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值