Java课程设计(猜数字游戏)完整版解析

绝世美人儿
602次浏览
2021年01月01日 03:03
最佳经验
本文由作者推荐

名人警句-地理信息系统论文

2021年1月1日发(作者:蔡文浩)



课程设计任务书
学 院
课程名称
起止时间
计算机与信息工程学院
面向对象程序设计(Java)
专 业
题 目
2014计科(对口)

猜数字游戏

2015年12月25日至2015年12月31日

一、项目的目的
1. 巩固和加深学生对面向对象程序设计(Java)这门课程基本知识的
理解,综合该课程中所学的理论知 识,独立或联合完成一个Java图形界面
应用课题的设计;
2.根据选题需要,通过查阅手册和文献资料,培养分析和解决实际问
题的能力;
3.熟练运用基本的对象和类的操作知识,基本的图形界面的编写能力。





二、主要内容和要求
本此设计主要是用于猜数字游戏 ,首先,计算机产生一个随机数,然后
用户猜数,并显示出提示信息,以及游戏规则等功能。
三、设计思路
猜数字游戏思路比较简单,首先得产生一个随机数让用户来猜,然后用
peidui()方法来匹配用户输入的数是否正确。如果不正确则根据提示信息继
续猜数。直到猜出正 确结果。
四、具体成果形式和要求
程序和设计说明书,在该程序中通过Eclipse来运 行猜数字游戏程序,
程序代码主要由三个方法体组成。Random()方法是用来产生随机数的功能。
Peidui()方法用来匹配数字信息的。最后,Game()方法是用来设计界面
布局以及监听器的设计和猜数次数的显示信息.
起止日期




工作内容
2015年12月25号至
需求分析,按照课题要求,搜集查阅相关参考资料
2015年12月27号
2015年12月28号
概要设计和详细设计阶段,根据前期的需求分析结
果,定义 程序实现所需的各类方法及完成各方法的
功能
2015年12月28号至
程序的进一步完善,测试结果,撰写课程设计报告
2015年6月29号
2015年12月30号至
撰写课程设计报告,并且进行答辩
2015年12月31号
系(教研室)
主任意见



签 名: 年 月 日



























2015-2016学年第一学期
面向对象程序设计(Java)
课程设计说明书




班级名称: 2014计算机科学与技术(对口)
学生姓名: 徐竹青
学 号: 2014214190
题 目: 猜数字游戏
指导教师: 徐志红
起止日期: 2015年12月25日至2015年12月31日


计算机与信息工程学院



目 录
1.选题背景 .................................................. .................................................. ............................... 1
2.设计思路...... .................................................. .................................................. ............................. 1
2.1 课程设计思想 ... .................................................. .................................................. ............. 1
2.1.1设计内容 .................... .................................................. ............................................ 1
2.1.2设计要求 .................................... .................................................. ............................ 1
2.2功能需求 ....... .................................................. .................................................. .................. 1
2.3软硬件运行环境及开发工具 ......... .................................................. .................................. 1
3.过程论述... .................................................. .................................................. ................................ 2
3.1需求分析 ... .................................................. .................................................. ...................... 2
3.1.1系统功能图 .......... .................................................. .................................................. 2
3.1.2知识点 ................................... .................................................. ................................. 2
3.2程序代码分析 .................................................. .................................................. ................. 2
4.结果分析.................... .................................................. .................................................. ............... 7
4.1测试与操作说明 ................. .................................................. .............................................. 7
4.2测试数据及程序运行情况 ............................... .................................................. ................ 7
4.2.1猜数游戏结果 ............... .................................................. ......................................... 7
5.结论 ......................................... .................................................. .................................................. . 8
参考文献...................................... .................................................. .................................................. . 8
致 谢 ..................................... .................................................. .................................................. ..... 8



1.选题背景

Java语言作为当今Internet上最流行的编程语言,它的产生自然与游戏密切相关。本
次课程 设计是为了配合Java程序设计课程,帮助学生深入学习和掌握Java语言,熟练运用
这个工具而设 立的课程。通过课程设计的综合训练,加强学生对Java语言的理解,检验学
生对专业理论知识的理解 与掌握程度,锻炼学生综合运用Java程序设计所学的知识,实际
分析问题、解决问题的能力。 通过对猜数字游戏程序设计的学习,使学生掌握编程的基本方法,能够根据现实生活实
践编制出一些 使用的小程序,为以后学习其他相关课程打下基础。
2.设计思路
2.1 课程设计思想
2.1.1设计内容
设计一个猜数字游戏程序,要求具体如下特性:
(1) 输入任意一个数字。数字的要求是0-1000的自然数即可。
(2)系统对您输入的数字进行判断。如果玩家输入的数字与计算机随机生成的数相比较,
如果输入的数字和位置都正确。则提示为A,如果数字正确,位置错误,则提示为B。
(3)每猜测一次,系统会记录下来。显示剩余的猜数次数。
2.1.2设计要求
设计一个猜数字游戏程序,该游戏可以由程序随机产生整数,玩游戏者通过由用户输入
数字来匹配上面所 产生的数字。用户随机输入数字,当与计算机产生的随机数相符合时,计
算机将提醒用户,游戏成功的信 息,当有偏差时,将会提醒偏差,如0A1B,0A 表示用户没
有猜对一个数字和位置都正确的数,1B 表示用户猜对了一个数字,但数字的位置是错的。
2.2功能需求
一个较完善的猜数字游戏的程序功能,应该具有产生随机数、用户输入数字、如何猜数
等功能。
所以要求完成以下功能:
(1)首先计算机内部产生一个随机数。
(2)由用户输入数字,根据程序的格式限制,来判断用户输入的数格式是否正确。
(3)如何进行猜数,并显示出猜数的次数以及剩余的次数。
2.3软硬件运行环境及开发工具
(1)编成语言:Java语言。
(2)开发环境:Microsoft Windows 7、JDK,Eclispse。

1



3.过程论述
3.1需求分析
3.1.1系统功能图
猜数字游戏的几个功能可将本游戏程序分为三大模块:(1)由电脑随机产生一个随
(2)用户输入几位数并判断数的格式;(3)显示提示信息及用户所剩余的机会。
各功能模块如图3-1所示。









由电脑随机产生一
个随机数


猜数字游戏

用户输入几位数并
判断数的格式
图3-1功能模块图

显示提示信息及用
户所剩余的机会
3.1.2知识点
本程序是一个简单的记事本程序,涉及到了以下知识点:
(1)类的继承。
(2)图形化用户界面。
(3)事件处理,如:事件源、监听器、事件处理器。
3.2程序代码分析
(1)将用户输 入的四位数与计算机产生的随机数匹配,如果数字和位置完全正确A++;如
果位置错误则B++;界面 的显示情况如图3-2所示。










图3-2猜数界面提示信息图

2



代码如下:
public void peidui(){
A=0;
B=0;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if (Random[i]==Enter[j])
{
if (i==j)
A++;
else
B++;
}
(
while(true){
if(y!=0){
(你还有次机会!
y--;
}
else
(你猜错了,请重新游戏!正确结果
是:
break
}
if (A==4&&B==0){
(恭喜你猜对了!
}
}
(2)图形用户界面的设计与布局。如图3-2所示





3








图3-3猜数字游戏开始状态


图3-2猜数字游戏界面
代码如下:
public Game(){
super(猜数字游戏
Randomnum();
Container n=tentPane();
out(new BorderLayout());
jlb1=new JLabel(请输入
bt=new JButton(确定
JPanel jp1=new JPanel();
JPanel jp2=new JPanel();
JPanel jp3=new JPanel();
(
(
out(new FlowLayout());
(jlb1);
(tf);
ible(true);
getContentPane().add(scp);
out(new FlowLayout());
nds(140, 170, 80, 30);
(bt);
ible(true);
ionListener(this);
ionListener(this);

4



(mit1);
(mit2);
ionListener(this);
(menu1);
e(300, 300);
nuBar(jmb);
ible(true);
aultCloseOperation(_ON_CLOSE);
设置窗口可关闭
}
(3)在游戏界面单击“游戏”菜单下的“规则”子菜单,将会出现如图3-3所示。





图3-3游戏规则对话框
代码如下:
public void actionPerformed (ActionEvent n){











}
(3)输入的数字格式不正确,单击确定按钮时,出现在“文本域”中的提示信 息,如图3-4
所示。
if(ionCommand().equals(规则







}
if(ionCommand().equals(退出
(0);
nds(600, 350, 300, 150);
out(new BorderLayout());
le(游戏规则
(
(
(
ible(true);


5











图3-4数字格式匹配信息提示图
代码如下:
if(ionCommand().equals(确定
try {
x=0;
int z=f(t()); 获取文本中的值,将它转换
for(int i=3;i>=0;i--){ 成整型


}
} catch (Exception m) {
(请检查输入值的格式!
x=1;
}
if (t().length()!=4)
{
(请输入四位数字!
Enter[i]=z%10;
z=z10;
}
else if (x==0){
for (i=0;i<4;i++)
for(j=0;j<4;j++)
{

if (Enter[i]==(Enter[j])&&i!=j)
{

6



(请输入4不同的数字!
break
}
else if (i==3&&j==3)
peidui();
}
}
}
}

4.结果分析

4.1测试与操作说明
使用Eclipse,打开猜数字游戏.Java文件,接着纠正错误,无错误,最后执行该文件。 < br>要求用户在请输入后的文本框中输入数字,如果输入格式不正确会出现“请输入正确的格式”
的提 示信息;如果输入的不是四位数会出现“请输入四位数的提示信息”;如果输入的数字
格式是正确的,那 么将根据提示信息进行猜数,直到猜出正确结果。

4.2测试数据及程序运行情况

4.2.1猜数游戏结果
如图4-4所示

图4-1猜数游戏结果




7



5.结论
猜数字是一款非常经典的脑力游戏,游戏规则简单,但是 玩起来难度较大,是消磨时间、
锻炼脑力的好选择。通过选择猜数字游戏这个题目,可以让我掌握Jav a中的包和类,并且
可以灵活的使用Eclipse软件。同时更加深入的了解字符界面的编程过程。使 我更熟练的掌
握Java程序框架的搭建和类的创建格式。在分析阶段,要进行面向对象的需求分析、系 统
设计、画出相应的需求分析图、系统设计模型图,这些工作更能锻炼我的逻辑思维,更能培
养 我思考的全面性。让我学会了多角度思考问题,对我以后的编程奠定了更好的基础。
参考文献
[1] 赵生慧. Java面向对象程序设计.中国水利水电出版社
[2] 赵生慧. Java面向对象程序设计实训与考试指导.中国水利水电出版社
致 谢
在此向所有关心 我及帮助我的老师和同学致以最真诚的感谢。在本次课程设计中,尤其
要感谢徐志红老师,对我们的课程 设计时刻的关注,当我们遇到困难时给了我们很大的帮助,
同时我还要感谢马骏老师给我的指导,让我更 深刻的明白了布局管理器的作用,交给了我认
真独立完成工作的理念,使得我能够按时完成这次的课程设 计。

指导教师评语:




成绩评定:

指导教师签名:

填表日期: 年 月 日



8

崔贤珠-文华烟瘾清


不织布手工-复旦大学陈果


年金现值-十八禁漫画


齐宣王为大室-鸦片战争观后感


美白养颜汤-购销合同书范本


初三化学-立项建议书


韩寒1988经典语录-经常的反义词


海边风景图片-初二数学期末试卷