




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
通信专业课程设计二(论文)太原科技大学课 程 设 计(论 文)设计(论文)题目:基于MyEclipse平台猜数字游戏的设计姓 名 学 号 200822080132 班 级 通信082201H 学 院 华科学院 指导教师 2012 年 1 月 6 日2太原科技大学课程设计(论文)任务书学院(直属系):华科学院电子信息工程系 时间: 2011年12月23 日学 生 姓 名张壮阔指 导 教 师郑秀萍设计(论文)题目基于MyEclipse平台猜数字游戏的设计主要研究内容1. 了解MyEclipse平台java应用的设计2. 基于MyEclipse平台设计猜数字游戏研究方法运用MyEclipse平台上的JavaEE开发,设计猜数字游戏的程序模块。主要技术指标(或研究目标)基于MyEclipse平台的Eclipse IDE的扩展,设计Java游戏猜数字。教研室意见 教研室(负责人)签字: 年 月 日张壮阔:基于MyEclipse平台猜数字游戏的设计目 录基于MyEclipse平台猜数字游戏的设计- 2 -第1章 猜数字游戏设计概述- 2 -1.1 MyEclipse平台介绍- 2 -1.2 设计任务与要求概述- 3 -第2章 猜数字游戏系统设计- 4 -2.1 系统总体设计- 4 -2.1.1 总体设计分析- 4 -2.1.2 程序结构- 4 -2.2 功能模块设计- 6 -2.2.1 猜数字游戏功能模块图- 6 -2.2.2 功能模块详细设计- 6 -2.3 类的设计- 8 -第3章 猜数字游戏程序实现- 10 -3.1 猜数字程序流程- 10 -3.2 关键算法与技术实现- 10 -3.2.1 随机数的获取- 10 -3.2.2 输入输出- 10 -3.2.3 判断时间- 11 -3.2.4 自动计数- 11 -3.2.5 结果输出- 11 -3.2.6 图形界面的实现- 11 -3.3 类的实现- 13 -第4章 游戏系统测试结果- 15 -4.1 系统测试方案- 15 -4.2 运行结果分析- 15 -第5章 总结- 18 -参考文献- 19 -基于MyEclipse平台猜数字游戏的设计第1章 猜数字游戏设计概述1.1 MyEclipse平台介绍MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:1. JavaEE模型2. WEB开发工具3. EJB开发工具4. 应用程序服务器的连接器5. JavaEE项目部署服务6. 数据库服务7. MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。该程序基于JDK和MyEclipse编写,选用MyEclipse是界面设计所需。根据系统范围随机产生一个数字,可根据玩家选择给出不同的数字。玩家输入所猜数字时给出与真实数字的大小比较。在玩家猜中时,可给出其所用时间,并给出评价。最后,游戏的结束与继续可由玩家控制。1.2 设计任务与要求概述功能要求:该程序用图形界面实现下面功能:用计算机产生一个100以内的随机数,游戏者进行猜数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜对为止。游戏结束后给出评语并计算出玩家所用的时间与所猜的次数。具体要求:1) 欢迎界面:通过这里提供的选项(或按钮),进入游戏界面。2) 游戏界面提供“获取随机数”按钮,系统获取到随机数,游戏者输入自己的猜测结果,通过按“确认”按钮完成输入。每次提示输入猜测结果时,给出猜测的准确度提示。3) 按“获取随机数”按钮,继续游戏。4) 游戏结束后给出评语并计算出玩家所用的时间与所猜次数。界面要示:用图形界面实现。第2章 猜数字游戏系统设计2.1 系统总体设计2.1.1 总体设计分析1.随机数的获取:玩家输入一个数字,数字的范围在1-100之间,系统获取随机数。2 .输入输出模块:对玩家输入的数字进行判断和提示。如果玩家输入的不是系统要求的数字,系统将提示您,您输入的不是数字请重新输入.。如果玩家输入的数字与随机生成数相比较,比随机生成数小.系统提示您,数字太小请您重新输入。如果玩家输入的数字与随机生成数相比较,比随机生成数大.系统提示您,数字太大请您重新输入。3 .判断模块:算出所用时间在玩家猜中时给出其所用时间,系统给出对其水平的判断和是否继续的提示;对玩家要求判断执行。4 .自动计数模块:系统根据您猜数字的次数,自动计数。5 .结果输出模块:直到用户猜到数字为止,提示信息是否继续猜数字,如果继续将进入下一次游戏,如果退出将退出游戏系统.2.1.2 程序结构点击“获取随机数”按钮,系统获取到一个随机数。 玩家输入一个数,如果玩家输入的数比系统给出的随机数小,系统会提示“您猜的太小了,请继续猜!”。如果玩家输入的数比系统给出的随机数大,系统提示“您猜的太大了,请继续猜!”。 如果玩家猜对了数,但是所用时间大于十秒,系统会提示“这么久才猜出来,有点笨!”,并且会计算出玩家所用的时间和所猜的次数。如果玩家猜对了数,而且所用时间小于十秒,系统会提示“恭喜您,猜对了!您真棒,智商真高!”,并且会计算出玩家所用的时间和所猜的次数。 开 始系统产生一个随机数X玩家输入一个在099范围内的数Y若XY 若XY输出“您猜的太小了,请继续猜” 猜对输出“您猜的太大了,请继续猜” 这么久才猜出来,有点笨恭喜您,猜对了!您真棒!储存记录 结 束图2.1 程序结构图2.2 功能模块设计2.2.1 猜数字游戏功能模块图 游戏分为随机数的获取,输入输出模块,判断模块,自动计数模块,结果输出模块。其中输入输出模块中系统会对玩家给出的数进行判断和输出。判断模块会对玩家的水平进行判断,并计算出玩家所用的时间和次数。猜数游戏随机数的获取输入输出 模 块系统对玩家给出的数进行判断和输出判断模 块时间是否继续的选择水平自动计数模 块结果输出模 块图2.2 功能模块图2.2.2 功能模块详细设计1.随机数的获取功能描述:玩家输入一个数字,数字的范围在1-100之间,系统获取随机数。2. 输入输出模块功能描述:对玩家输入的数字进行判断和提示。如果玩家输入的不是系统要求的数字,系统将提示您,您输入的不是数字请重新输入.。如果玩家输入的数字与随机生成数相比较,比随机生成数小.系统提示您,数字太小请您重新输入。如果玩家输入的数字与随机生成数相比较,比随机生成数大.系统提示您,数字太大请您重新输入。输入输出模块对玩家输入的数字进行判断和提示您输入的不是数 字您输入的太 小您输入的太 大猜对了图2.3 输入输出模块图3.判断模块功能描述:算出所用时间在玩家猜中时给出其所用时间,系统给出对其水平的判断和是否继续的提示;对玩家要求判断执行。判断模块时间计算功 能系统对玩家的水平做出 判断提示玩家是否继 续图2.4 判断模块图4. 自动计数模块功能描述:系统根据您猜数字的次数,自动计数。计数器加1玩家猜数字,若猜错图2.5 自动计数模块图5. 结果输出模块功能描述:直到用户猜到数字为止,提示信息是否继续猜数字,如果继续将进入下一次游戏,如果退出将退出游戏系统。2.3 类的设计 表2.6.类的分类类名属性Math.random数学中的随机数。BorderLayout图形界面窗口的设计与调整Concurrentconcurrent 在并发编程中很常用的实用工具类。从用户的角度看,Java 源程序中的类分为两种:系统定义的类:即 Java 类库,它是系统定义好的类。Java 语言由语法规则和类库两部分组成,语法规则确定 Java 程序的书写规范;类库则提供了 Java 程序与运行它的系统软件(Java 虚拟机)之间的接口。用户自定义类:系统定义的类虽然实现了许多常见的功能,但是用户程序仍然需要针对特定问题的特定逻辑来定义自己的类。在 Java 程序中,用户自定义类的一般格式如下: class 类名数据成员成员方法类的结构是由类说明和类体两部分组成的。类的说明部分由关键字 class 与类名组成,类名的命名遵循 Java 标识符的定义规则。类体是类声明中花括号所包括的全部内容,它又是由数据成员(属性)和成员方法(方法)两部分组成。数据成员描述对象的属性;成员方法则刻画对象的行为或动作,每一个成员方法确定一个功能或操作。首先搭建Java程序框架。打开Eclipse,新建名为GuessNumberGame的项目,然后新建名为GuessNumber的Java类。GuessNumber加上合适的javadoc。第一步:随机数的产生我们可以借助Java API提供的Random类来产生一个随机数。首先在main函数中加入以下三行代码:/ 新建一个随机数产生器,然后生成一个1到100之间的整数。 num=(int)(Math.random()*100);String answer;Scanner input=new Scanner(System.in); 第二步:标准输入输出标准输入输出(Standard I/O)是指可以被应用程序使用的信息流。应用程序可以从标准输入(Standard input)读取数据,向标准输出(Standard output)写数据,把出错信息发送到标准错误(Standard error)。通过输入输出,应用程序和应用程序之间可以被串联起来使用。虽然标准输入输出是从UNIX发展出来的概念,在Windows中也广泛应用。猜数字游戏主要用到标准输入,更明确一些,就是控制台输入。相反,要从控制台输入,就需要用到System.in。它是一个纯粹的输入流,而猜数字游戏主要是通过控制台获取玩家的字符输入,我们需要把它包装成一个BufferedReader。第三步:使用BorderLayout对图形界面的窗口进行设计。第3章 猜数字游戏程序实现3.1 猜数字程序流程点击“获取随机数”按钮,系统获取到一个随机数。 玩家输入一个数,如果玩家输入的数比系统给出的随机数小,系统会提示“您猜的太小了,请继续猜!”。如果玩家输入的数比系统给出的随机数大,系统提示“您猜的太大了,请继续猜!”。 如果玩家猜对了数,但是所用时间大于十秒,系统会提示“这么久才猜出来,有点笨!”,并且会计算出玩家所用的时间和所猜的次数。如果玩家猜对了数,而且所用时间小于十秒,系统会提示“恭喜您,猜对了!您真棒,智商真高!”,并且会计算出玩家所用的时间和所猜的次数。3.2 关键算法与技术实现3.2.1 随机数的获取num=(int)(Math.random()*100);String answer;Scanner input=new Scanner(System.in);3.2.2 输入输出 for(i=1;i=10;i+) if(num2num)lbshow.setText(您猜的太大了,请继续猜!);continue;long endTime=System.currentTimeMillis();long t;t=(endTime-startTime)/1000;strshow=您总共猜了+counter+次,您猜数字总共花了+(endTime-startTime)/1000+秒;if(t10)lbshow.setText(这么久才猜出来,有点笨!+strshow); 3.2.3 判断时间startTime=System.currentTimeMillis();long endTime=System.currentTimeMillis();strshow=您猜数字总共花了+(endTime-startTime)/1000+秒;3.2.4 自动计数 int geust=0; counter+;strshow=您总共猜了+counter+次;3.2.5 结果输出 long t;t=(endTime-startTime)/1000;strshow=您总共猜了+counter+次,您猜数字总共花了+(endTime-startTime)/1000+秒;if(t10)lbshow.setText(这么久才猜出来,有点笨!+strshow);3.2.6 图形界面的实现 BorderLayout bdmg=new BorderLayout(); Button button1=new Button(获取随机数); Button button2=new Button(确定); String str=null; String str2=null;long startTime; int num,num2; int counter=0; myGeustNum my1=new myGeustNum(); TextField input; Label lbshow=new Label(); Label lbshow2=new Label(); int i; String strshow; public void init() setLayout(bdmg); add(button1,BorderLayout.NORTH); button1.addActionListener(this); button1.setSize(50,50); Label lb1=new Label( 请输入); lb1.setSize(50,20); this.add(lb1,BorderLayout.WEST); input=new TextField(10); input.setSize(40,50); add(input,BorderLayout.CENTER); add(button2,BorderLayout.EAST); lb1.setSize(50,20); button2.addActionListener(this); button2.setSize(50,20); add(lbshow,BorderLayout.SOUTH); setSize(450,200); 3.3 类的实现首先搭建Java程序框架。打开Eclipse,新建名为GuessNumberGame的项目,然后新建名为GuessNumber的Java类。GuessNumber加上合适的javadoc。第一步:随机数的产生我们可以借助Java API提供的Random类来产生一个随机数。首先在main函数中加入以下三行代码:/ 新建一个随机数产生器,然后生成一个1到100之间的整数。 num=(int)(Math.random()*100);String answer;Scanner input=new Scanner(System.in); Eclipse立即在错误语句处划出红线,把鼠标移动到红线上。包(Package)的概念Java API中包含了极其丰富、类似于Random这样由Sun预先定义好的类。不同包中可以有同名同姓的类,如果没有包的概念,就会遇到命名冲突问题。此外,包还能进行安全控制。Random类是在java.util这个包中。可以手动在源程序顶部输入import java.util.Random;语句来申明该程序将要使用java.util包中的Random类,然而有了Eclipse,就不用那么麻烦了把光标移动到有红色波浪线的Random上,然后按下CtrlShiftM,Eclipse会自动帮你完成导入的工作了,此时保存一下源代码。第二句语句定义一个整型变量number来保存随机产生的整数,并且用直接初始化的方法把random产生的随机数赋给number变量。第二步:标准输入输出标准输入输出(Standard I/O)是指可以被应用程序使用的信息流。应用程序可以从标准输入(Standard input)读取数据,向标准输出(Standard output)写数据,把出错信息发送到标准错误(Standard error)。通过输入输出,应用程序和应用程序之间可以被串联起来使用。虽然标准输入输出是从UNIX发展出来的概念,在Windows中也广泛应用。猜数字游戏主要用到标准输入,更明确一些,就是控制台输入。相反,要从控制台输入,就需要用到System.in。它是一个纯粹的输入流,而猜数字游戏主要是通过控制台获取玩家的字符输入,我们需要把它包装成一个BufferedReader。 第三步:使用BorderLayout对图形界面的窗口进行设计。第4章 游戏系统测试结果4.1 系统测试方案1.点击运行程序后,显示出图形界面。2.点击“获取随机数”按钮,系统获取到一个随机数。3.玩家输入一个数,点击“确定”按钮。如果玩家输入的数比系统给出的随机数小,系统会提示“您猜的太小了,请继续猜!”。如果玩家输入的数比系统给出的随机数大,系统提示“您猜的太大了,请继续猜!”。4. 如果玩家猜对了数,但是所用时间大于十秒,系统会提示“这么久才猜出来,有点笨!”,并且会计算出玩家所用的时间和所猜的次数。如果玩家猜对了数,而且所用时间小于十秒,系统会提示“恭喜您,猜对了!您真棒,智商真高!”,并且会计算出玩家所用的时间和所猜的次数。5.如果玩家想重新再玩一次,点击“获取随机数”按钮即可继续玩下一轮游戏。4.2 运行结果分析开始运行程序时图形界面的显示图4.1 图形显示界面玩家输入一个数“25”后,点击“确定”,系统提示“您猜的太小了,请继续猜!”。图4.2 系统提示图a玩家再次输入一个数“70”后,点击“确定”,系统提示“您猜的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年年有余课件拓印
- 娱乐主播培训教学课件
- 威尼斯的小艇预习课件
- 矿业有限公司股权转让协议6篇
- 平面构成形态课件
- 工业安全培训新闻稿件课件
- 工业安全培训教育课件
- FO-32-生命科学试剂-MCE
- FA-Leu-Gly-Pro-Ala-OH-TFA-生命科学试剂-MCE
- 三年级数学上册奥数专题线段图法解决和倍问题课件
- 监测数据智能分析
- 临床基于ERAS理念下医护患一体化疼痛管理实践探索
- 外科术后患者营养宣教要点
- 安全技术交底书
- 统编版(2024)八年级上册道德与法治第一单元《走进社会生活》测试卷(含答案)
- 学堂在线 战场侦察监视技术与装备 章节测试答案
- DG-TJ08-2120-2025 集体土地所有权调查技术标准
- 2024年上海电子信息职业技术学院招聘笔试真题
- 消化内科重点专科申报
- 山东2025年中小学国防教育知识竞赛
- 脑卒中的饮食护理课件
评论
0/150
提交评论