博弈树实现3字棋程序设计报告

博弈树实现3字棋程序设计报告

ID:47020230

大小:278.50 KB

页数:12页

时间:2019-06-10

博弈树实现3字棋程序设计报告_第1页
博弈树实现3字棋程序设计报告_第2页
博弈树实现3字棋程序设计报告_第3页
博弈树实现3字棋程序设计报告_第4页
博弈树实现3字棋程序设计报告_第5页
资源描述:

《博弈树实现3字棋程序设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、目录摘要3第一部分设计总概3一.设计目的3二.设计要求及内容4三.设计方法4四.系统分析与设计4一.概要设计4二.详细设计4第二部分数据结构设计5一:主系统的函数5二:头文件5第三部分功能实现与程序调试5一:程序实现的功能流程图6二:程序实现源代码61.头文件62.cpp文件代码9三.程序实现截图101.界面102.进入游戏开始下棋103.判断棋局胜负:124:结束游戏:12第四部分完成设计13一、实验总结13摘要用所学的语言,设计简单的一字棋游戏。关键字:博弈,启发式搜索第一部分设计总概一.设计

2、目的理解和掌握博弈树的启发式搜索过程,能够用选定的编程语言实现简单的博弈游戏。二.设计要求及内容设计一个不少于3行3列的棋盘,自己给出估价函数,采用极大极小搜索方法。采用人机对弈的方式,一方走步够等待对方,对弈过程的棋局变化在屏幕上显示。三.设计方法采用c语言编写程序实现四.系统分析与设计一.概要设计A:进入主界面主界面包括导语及游戏操作步骤及其规则B:进入游戏,开始下棋C:判断输赢,结束游戏D:判断是否重新开始游戏是则返回B步骤否则结束游戏二.详细设计1.进入vs2010,选择win32项目,新

3、建程序2.界面设计利用所学的c语言知识,设计一个简单的棋盘游戏界面3.函数设计利用所学的算法,编写棋盘分析函数第二部分数据结构设计一:主系统的函数窗口创建函数,消息响应函数皆放在主函数cpp里面二:头文件存放具体的操作步骤及其函数第三部分功能实现与程序调试开始主界面判断输赢棋盘开始下棋分出胜负平局结束,是否重新开始游戏结束是否否是一:程序实现的功能流程图二:程序实现源代码1.头文件A:定义类:#include#includeusingnamespacestd;c

4、lassCGobang//棋子类{private:charchSort;//棋子的类别intnWin;//赢棋的次数intnLose;//输棋的次数staticintnDraw;//平局次数staticcharachBoard[3][3];//棋盘staticintnSize;//棋盘的尺寸nSizeXnSizepublic:CGobang(charchsort)//构造函数,决定一方棋子的类别{chSort=chsort;nWin=nLose=nDraw=0;}voidPlayTurn(void

5、);//走1步棋intJudge();//判断是否连成一线,是则返回1,否则返回0voidWin(void);//赢棋voidLose(void);//输棋staticvoidDraw(void);//平局voidPrintInfo(void);//输出总体情况staticvoidPrintBoard(void);//输出棋盘staticintGetFull(void);//判断棋盘是否已布满棋子staticvoidInitialBoard(void);//初始化棋盘};B:操作函数:#inclu

6、de"lei.h"#includecharCGobang::achBoard[3][3];intCGobang::nSize=3;intCGobang::nDraw=0;voidCGobang::Draw(){cout<<"tt平局!";nDraw++;}voidCGobang::InitialBoard()//初始化棋盘{for(inti=0;i

7、Gobang::PrintBoard()//输出棋盘{system("CLS");cout<

8、"<

9、"<

10、---

11、---"<

12、"<

13、"<

14、---

15、---

16、---"<

17、"<

18、"<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。