软件08-2-宋红博-中国象棋.docVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

大连科技学院

面向对象程序设计课程设计

题目中国象棋

学生姓名宋红博专业班级软件工程08-2

指导教师李孝贵职称助教

所在单位信息科学系软件工程教研室

教学部主任王立娟

完成日期2011年9月9日

课程设计报告单

学号

0801030201

姓名

宋红博

专业班级

软件工程08-2

考核项目

评分

备注

1

平时工作态度及遵守纪律情况

〔10分〕

2

掌握根本理论、关键知识、根本技能的程度和阅读参考资料的水平

〔10分〕

3

独立工作能力、综合运用所学知识分析和解决问题能力及实际工作能力提高的程度

〔20分〕

4

完成课程设计说明书及软件的情况与水平〔小组分工情况、标准性、整洁清楚、表达完整性、思路清晰程度、工作量及实际运行情况和创新性〕

〔60分〕

总评成绩

综合评定:

〔优、良、中、及格、不及格〕

指导教师签字:

2011年9月9日

《面向对象程序设计(A)课程设计》任务书

一、课程设计任务及要求:

任务:针对小型信息管理系统或假设干综合性设计题目,选择一种软件开发模型,完成从需求分析、系统设计、系统实现,软件测试的全过程。

要求:

(1)根据软件系统开发的一般原那么,完成相应系统的功能设计,完成主要功能模块的程序实现并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行,但所有学生必须经历整个系统的开发全过程,以便加深对系统开发全过程的认识。

〔2〕提交课程设计报告。

〔3〕指标:要求完成课程设计报告3000字以上(约二十页);完成所设计的题目,设计题目的语句行数的和在200行语句以上。

二、工作量

2周〔10个工作日〕时间

三、方案安排

第1个工作日:查找相关资料、书籍,阅读例如文档,选择题目。

第2个工作日-第4个工作日:设计程序结构、模块图。

第5个工作日-第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。

第10个工作日:上交课程设计报告,由教师检查软件测试效果、检查课程设计报告,给出学生成绩。

指导教师签字:

2011年8月29日

目录

TOC\o1-2\h\z\u题目: 1

1.需求分析 1

2.概要设计 1

3.详细设计 2

4.编码 3

5.调试分析 4

6.测试结果及运行效果 4

7.系统开发所用到的技术 5

参考文献 6

附录全部代码 7

题目:中国象棋分析与设计

需求分析

中国象棋具有悠久的历史,几千年以来,一直被认为是人们所热爱的休闲活动之一。象棋具有独特的规那么,主要为车行直路,马走狭日,相行田,士相不离老王边,炮翻山,兵、卒只进不退,过河前方能左右行。程序设计就是把现实中的人与人之间的对弈,改成电脑与人的对弈。电脑的形为仿照人的形为,正确的走棋,“思考”,下棋。任务要求,画出棋盘,实现简单的人机对弈。

概要设计

1、数据表示:主要包括棋盘的表示和棋子的表示。

2、走法的产生:包括车马相士炮等的根本走法和检测是否将军,或被将死,还包括检

查一种棋子是否还有剩余,判断走法是否和法以及枚举可能有的合法的走法。

3、搜索引擎:搜索棋子可能有的走法,并且产生最正确的走法。搜索引擎包括许多算法,如极大极小值、负极大值、深度优先搜索、置换表、历史启发等等搜索算法。

4、估值方法:即对棋子的价值进行评估,如兵为300,车为1000,将帅位无限大等;对棋子的位置进行评估,如过河后越逼近九宫的卒/兵价值越大;对棋子的灵活性进行评估,灵活性越大,价值越大,如一般车的灵活性大于卒等;对棋子间关系进行评估,即棋子受到的威胁越大,价值越低,受到的保护越多,价值越高;还要与搜索算法相结合。

5、界面设计:主要有棋盘、棋子、拖动实现走棋、悔棋、复原、搜素引擎〔包括算法和搜索深度〕设置等。一些美化可以直接使用网络上的美化资源,消息响应函数与处理函数等的实现。

详细设计

图3-1模块设计图

图3-2算法流程图

编码

1棋盘

BITMAPBitMap;

m_BoardBmp.LoadBitmap(IDB_CHESSBOARD);

m_BoardBmp.GetBitmap(BitMap);//取BitMap对象

m_nBoardWidth=BitMap.bmWidth;//棋盘宽度

m_nBoardHeight=BitMap.bmHeight;//棋盘

文档评论(0)

199****4744 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7002121022000045

1亿VIP精品文档

相关文档