基于C++的黑白棋游戏设计与实现


时间: 2021-07-03 23:06:51 人气: 40 评论: 0

内容简介 

这个程序使用了QT工具和c++语言来进行开发,由于QT的跨平台特性非常好,所以这款程序可以在Windows和Linux环境下顺畅的运行。这款游戏分为人与人在同一棋盘上的对弈和人机对弈,游戏附带悔棋功能和难度选择等供玩家选择更多的游戏模式。

文章的前部介绍黑白棋的发展史和游戏规则以及普及范围,然后介绍这款程序的开发环境以及开发工具,其中详细介绍QT工具的使用和优点等和发展前景等。最后介绍人工智能的发展情况以及前景。 这次设计阐述了黑白棋的开发过程,包括用户需求,逻辑分析,中期程序的设计和后勤软件的实现和测试几个步骤。


关键词  黑白棋  人工智能  QT


在这里我们要站在计算机的角度对黑白棋游戏进行全面思考,让计算机能够像人一样实现对对手下一步的思考以及自己将如何最合理的落子,之前在博弈论与棋牌游戏的概述中我们可以了解到,人人对弈的时候玩家会考虑自己或对手落子会对双方造成的影响,从而判断整个棋局的胜败。在黑白棋中,棋盘上剩余的子多并不代表赢的几率大,很多棋手利用很少的棋子就能够吃掉更多的棋子从而反败为胜,我们不但要教会计算机如何能按照人类的思维去思考,更加需要模拟出这一过程,当我们和同事,朋友在一起下期时,时常会想象假如我走了这一步,对手将如何落子,如果对手走了下一步那我又应该怎样回应?这样反复进行下去的过程叫做搜索。



基于c++的黑白棋游戏开发 II

内容简介 II

关键词  黑白棋  人工智能  QT II

1.前言 1

1.1 程序开发背景 1

1.2 黑白棋简介 2

1.3 黑白棋游戏规则 2

1.4棋牌游戏与博弈论 2

1.5编程语言以及实现环境 3

1.6开发环境 4

1.7运行环境 4

1.8主要研究内容 4

1.9系统开发的现实意义 4

2. 开发工具 4

2.1 QT简介 4

2.2信号与槽 5

3. 黑白棋需求分析 7

3.1 黑白棋界面需求 7

3. 2游戏规则 7

4 黑白棋总体设计 8

4.1 程序流程图 8

4.2 主要功能 9

5. 程序实现 10

5.1 图形界面的构建 10

5.2主要函数:棋子的翻转原理 11

5.3 电脑战术分析 12

5.4棋盘扫描 13

5.5判断对手下一步的行动 13

5.6选最佳位置落子 14

6.软件测试 15

6.1双人模式下的测试 15

6.2悔棋功能和悔棋恢复测试 15

6.3PASS情况的悔棋恢复 15

6.4PASS状况的测试 15

6.5游戏模块测试 15

6.6悔棋测试 16

6.7综合测试报告 16

7. 总结和展望 16

7.1 总结 16

7.2展望 16

致谢 18

参考文献 19

[1]Jasmin Blanchette,Mark Summerfield.C++ GUI Qt 4编程[M].第2版.北京:电子工业大学出版社,2013. 19

[2] Mark Summerfield.Qt高级编程[M].北京:电子工业大学出版社, 2011. 19

[3] 郑杜鹃,黄晓放. 基于Linux_Qt 的嵌入式视频采集[J]. 中国科技论文在线,2013:1-5. 19

[4] 张桂平,陈端迎,刘宝华,田亚丽. QT 在国产操作系统中的应用[J].计算机光盘软件与应用,2012:114-115. 19

[5] 杜秀全,程家兴.博弈算法在黑白棋中的应用[J].计算机技术与发展, 2007:217-218. 19

[6] 吴华蕾.奥赛罗棋智能模块的算法设计 [J].厦门教育学院学报,2005:83-84. 19

[7] BarbaraMoo ,AndrewKoenig.C++沉思录[M]. 北京:人民邮电出版社,2008. 19


评论
188083800