2023年4月17日发(作者:管理岗位)
山东理工大学
本科学士学位论文中期检查报告
学 生 姓 名:
学 生 所 在 班 级:
指 导 教 师:
企 业 指 导 教 师:
专 业 领 域 名 称:
中 期 报 告 日 期
:
山东理工大学电气与电子工程学院 齐刘海发型
二O一二年九月制表
一、论文三级大纲
摘 要 ............................................ 错误!未定义书签。
Abstract .......................................... 错误!未定义书签。
第一章 绪论 ....................朝山
................... 错误!未定义书签。
1.1 五子棋介绍 ............................... 错误!未定义书签。
1.1.1 五子棋简介 .......................... 错误!未定义书签。
1.1.2 五子棋的比赛规则 .................... 错误!未定义书签。
1.1.3 五子棋国内发展情况 .................. 错误!未定义书签。
1.1.4 五子棋国外发展情况 .................. 错误!未定义书签。
1.2 开发以及运行环境 ......................... 错误!未定义书签。
1.3 QT的基本特征综述 ......................... 错误!未定义书签。
第二章 需求分析以及可行性研究 ..................... 错误!未定义书签。
2.1 需求分析 ................................. 错误!未定义书签。
2.1.1 市场需求分析 ........................ 错误!未定义书签。
2.1.2 功能需求分析 ........................ 错误!未定义书签。
2.2 可行性研究 ..........怎么解除微信绑定的银行卡
..................... 错误!未定义书签。
第三章 框架设计 ................................... 错误!未定义书签。
3.1 概要设计 ................................... 错误!未定义书签。
3.1.1 棋盘区域 ............................ 错误!未定义书签。
3.1.2 标示区域 ............................ 错误!未定义书签。
3.1.3 功能区域 ............................ 错误!未定义书签。
3.2 数据字典 ................................. 错误!未定义书签。
第四章 详细设计 ................................... 错误!未定义书签。
4.1 窗体的设计 ............................... 错误!未定义书签。
4.2 棋盘以及功能按钮的设计 ................... 错误!未定义书签。
4.3 判断胜负的设计 ........................... 错误!未定义书签。
4.4 主要类和函数 ............................ 错误!未定义书签。
4.4.1 主要的使用到的类 .................... 错误!未定义书签。
4.4.2 主要成员函数 ........................ 错误!未定义书签。
第五章 系统实现 ................................... 错误!未定义书签。
5.1 系统测试 ................................. 错误!未定义书签。
5.2 系统运行结果 ............................. 错误!未定义书签。
第六章 补充说明 ................................... 错误!未定义书签。
结 论 ............................................ 错误!未定义书签。
参考文献 .......................................... 错误!未定义书签。
致 谢 错误!未定义书签。
二、论文工作进展及所取得的阶段性成果
1
1、已完成论文工作是否符合开题报告内容(如有不符或变动之处说明原因);
论文工作进展情况截止目前,中期成果与开题相符,论文内容与开提报告基本没有
什么出入,正在按照开题报告的进度表计划进行,基本能够按时保质完成研究的课题。
现在完成的部分工作主要有: 1.收集资料,基本完成了游戏整体流程的设计,搭
建了游戏设计框架。 2.研究了五子棋软件的相关技术,并且设计了相关游戏的构架,
游戏世界的场景,技术操作方式,人机交互界面等。 3.利用QT软件平台构建了部分模
型,做出了大部分效果。 4.对于已经完成的大部分模型已经进行了对软件的测试,已
完成部分符合开题报告中的设想。
2、论文工作中已采用的原理、手段、技术方案;
课题研究采用的基本原理;当今世界,游戏产业飞速发展,一款创新、好玩、让人
印象深刻的游戏绝对拥有强大的市场和影响力。所以,为了体验在浪漫魔幻的世界里游
戏带来的震撼冲击力,我的课题选择了基于QT的五子棋,结合QT这款跨平台的C++图
形用户界面(GUI)工具包,按照软件工程的开发步听诊器简笔画
骤,完成五子棋游戏的设计与开发
样例。
课题采用的手段和技术方案;1. 通过大量的看书籍、上网查资料,了解了很多有
关五子棋的知识,包括它的历史背景和地位,以及操作方式和判断输赢。在了解五子棋
的基本知识后,开始设想一下自己所要设计的五子棋的功能,然后再设身处地的去玩多
款五子棋游戏,了解他们的基本内容和差异,结合他们的优点,再加上自己的独特设计,
开始设计游戏。 整个游戏主要根据游戏设计规则,综合视觉艺术、编程、产品化、声
效、场景、界面以上的元素,设计整体的游戏风格,规格玩法等。然后,QT平台的开发
是整个五子棋游戏系统过程中工作量最重的一个阶段, 需要我熟练掌握QT有关知识,
通过反复细致的修改,开发出逼真的虚拟环境和舒服的交互方式。虚拟环境创设的越逼
真,交互设计的越人机 ,更能提高沉浸感,玩家感觉就越好。 2. 对于设计游戏所需要
的平台,Qt是一个跨平台的C++图形用户界面应用程序框架,它提供给应用程序开发者
建立艺术级的图形用户界面所需的所用功能。Qt 有着众多的优势:优良的跨平台特性、
面向对象、丰富的API、支持2D/3D 图形渲染、支持OpenGL、支持XML,集成了开源
浏览器网页排版引擎Webkit 等等。
3、得到的结论、成果及新见解。
成果一:完成了主界面窗体的设计,包括开始游戏和退出游戏等功能,打开游戏,
用户可以直接进入游戏,游戏结束时,用户可以选择是否开始新一轮游戏。
成果二:完成了棋盘以及功能按钮的设计,1.定义一个棋盘类,在public slot属
性中定义需要使用的函数Class Board:public QWidget。然后定义Chess *grid[225]
用来存储棋子指针。Char realgrid[15][15](棋子网络数组,真正的网络,标示已有棋
1
子,用于节点和生成字节点的判断)等。定义胜利标志位bool victory。要把棋盘和棋
子显示出来,2.鼠标输入数据的处理,要实现鼠标输入数据的处理,3.绘制棋子——Draw
这是非常重要的一个函数,它根据参数给定的坐标和颜色绘制棋子。4.悔棋:开始以前
按钮设置为禁止,只有在棋局的过程中,并且轮到该本方落子,并且棋盘有2个棋子或
2个棋子以上时,“悔棋”按钮才被置于激活状态(T)。5清除棋盘:在每一局游戏开始
的时候都需要调用这个函数将棋盘清空,也就是棋盘的初始化工作。
成果三:完成了判断胜负的设计,五子棋的胜负,在于判断棋盘上是否有一个点,
从这个点开始的右、下、右下、左下四个方向是否有连续的五个同色棋子出现,
在五子棋设计的过程中,通过不断的查阅资料和思考,使我对五子棋的认识不断加
深,也产生了很多新想法,比如这个游戏主要有休闲益智的功能,我们是不是可以加入
一些自己喜欢的流行元素进去等等,同时通过对五子棋的设计和实现,不但加固了自己
的基础知识,同时还使我对编程思想有了很大的认识和提高,
三、遇到的困难和问题,以及拟采取的解决办法
在论文方面,首先,对于初写论文的我来说思路不是很清晰,不知道该怎么去写,
确切的说是不知道该以什么样的过程来写,对于一些东西感觉会很懵懂,但是通过查阅
一些书籍资料,现在对于写论文的思路和过程都已经有了清晰的了解,同时在写论文的
过程中思维具有一定项目咨询
的跳跃性,细节的方面有时候会注意不到,有时候会漏掉一些细节
方面的东西,这些要时常的提醒一下自己,要注意细节,努力养成一个好习惯,其次,
观点表述困难,可能是文字表达能力不强的原因,有些时候自己明明考虑的很清楚的问
题当要表述成文字的时候,总会遗漏一些重要信息。从而形成观点不明确的问题,为解
决这个问题,我需要不断的锻炼自己的表达能力,及时的记录一下自己的想法。
在设计方面,本课题的重点在于采用人机对战模式和有关算法的实现。一般情况下重点
也就是难点
尤其是有关算法的实现,算法考虑得越周到,其五子棋程序就越智能。我们都曾玩过一
些电脑上或是电子词典中的五子棋游戏,赢的几率还是有的,甚至有的版本只要玩家没
有大的错误,一般就不会输。这是因为该程序没有攻击的能力。而我们要设计一款具备
防备和攻击为一体的程序,是非常有难度的,对于这些方面还是感觉到有些无力感,但
是通过大量的看书、从网上查资料和请教他人梦见掉了一颗牙
,对于算法这一块也是有了一定的收获,
1
四、下一阶段的工作计划
在接下来的时间中我将集中完成论文的剩余部分,按照论文工作计划,抓紧撰写;
主要包括完成论文的第三部分还剩余没完成的以及一些结束语,进一步完善各章节的内
容,总结概括论文的中心,完成摘要部分,查阅文献,研究对战算法,选用其中一种方法
对评标结果的进行验证;初稿完成后,详细阅读学位论文撰写规定和排版格式要求,仔
细检查,保证前后用词一致、语句通顺、段落衔接紧密按照指定的标准对论文进行排版、
打印、装订。在老师的指导下最终按时完成我的毕业论文。
五、主要参考文献
[1] 棋类游戏的智能模块设计――浅谈人工智能[J].2004-09.
[2] 蔡自兴,徐光祐.人工智能及其应用(第三版)[M].北京:清华大学出版
社.2003-9.
[3] 杜秀全,程家兴.博弈算法在黑白棋中的应用[J].2003.
[4] 王小春.PC游戏编程(人机博弈)[M]. 重庆大学出版社.2002.6. 男人护肤
[5] 赖泳伶,张孝凡,黑白棋自我学习的改进策略[J].2004.6.
[6] 网络编程技术及应用,谭献海编著,清华大学出版社,2003:61-62.
[7] 网络程序设计教程,吴礼发编著∕谢稀仁审定,北京希望电子出版社,2007(9)
[8] 21天学通C++,Jes Liberty著,康博创作室译,人民邮电出版社,2005:
4-8
[9] C++编程思想,Bruce Eckel著机械工业出版社,2002:1-9
[10] Visual C++网络通信协议分析与应用,汪晓平/钟军等编著,人民邮电出版
社,2001:14-15
[11]谭锋,章伟聪,Visual C+婴儿奶量计算公式
+程序设计实训教程,北京:科学出版社,2003(8)
[12]肖宏伟,Visual C++实效编程百例,北京:人民邮电出版社,2004(8)
[13]刘加海,罗晓芳,面向对象的程序设计C++,北京:科学出丰乐亭记翻译
版社,2003(8)
[14]王超龙,陈志华,Visual C++入门与提高,北京:人民邮电出版社,2005(5)
1