欢迎来到天天文库
浏览记录
ID:48376731
大小:278.51 KB
页数:12页
时间:2019-12-03
《博弈树实现3字棋程序设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
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项目,新建程序2.界面设计利用所学的c语言知识,设计一个简单的棋盘游戏界面3.函数设计利用所学的算法,编写棋盘分析函数第二部分数据结构设计一:主系统的函数窗口创建函
3、数,消息响应函数皆放在主函数cpp里面二:头文件存放具体的操作步骤及其函数第三部分功能实现与程序调试开始主界面判断输赢棋盘开始下棋分出胜负平局结束,是否重新开始游戏结束是否否是一:程序实现的功能流程图二:程序实现源代码1.头文件A:定义类:#include#includeusingnamespacestd;classCGobang//棋子类{private:charchSort;//棋子的类别intnWin;//赢棋的次数intnLose;//输棋的次数staticintnDraw;//平局次数staticcharachBoard[3][
4、3];//棋盘staticintnSize;//棋盘的尺寸nSizeXnSizepublic:CGobang(charchsort)//构造函数,决定一方棋子的类别{chSort=chsort;nWin=nLose=nDraw=0;}voidPlayTurn(void);//走1步棋intJudge();//判断是否连成一线,是则返回1,否则返回0voidWin(void);//赢棋voidLose(void);//输棋staticvoidDraw(void);//平局voidPrintInfo(void);//输出总体情况staticvoidPrintBoard(void
5、);//输出棋盘staticintGetFull(void);//判断棋盘是否已布满棋子staticvoidInitialBoard(void);//初始化棋盘};B:操作函数:#include"lei.h"#includecharCGobang::achBoard[3][3];intCGobang::nSize=3;intCGobang::nDraw=0;voidCGobang::Draw(){cout<<"tt平局!";nDraw++;}voidCGobang::InitialBoard()//初始化棋盘{for(inti=0;i6、Size;i++)for(intj=0;j7、"<8、"<9、---10、---"<11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
6、Size;i++)for(intj=0;j7、"<8、"<9、---10、---"<11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
7、"<8、"<9、---10、---"<11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
8、"<9、---10、---"<11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
9、---
10、---"<11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
11、"<12、"<13、[2]<14、---15、---"<16、"<17、"<
12、"<13、[2]<14、---15、---"<16、"<17、"<
13、[2]<14、---15、---"<16、"<17、"<
14、---
15、---"<16、"<17、"<
16、"<17、"<
17、"<
此文档下载收益归作者所有