Tianjin TianShi College |
Java课程设计
(阶段一文档)
院 别: 信息科学与工程学院 专 业: 计算机科学与技术 班 级: 2018级计科3班 学生姓名: 赵新宇 指导老师: 李小红 |
二〇二〇年七月
目 录
1 选题... 1
2 系统需求分析... 3
2.1 系统可行性分析... 3
2.2 系统需求分析... 3
2.3 进度安排... 4
3 系统设计... 5
3.1 系统设计... 5
4 系统实现... 6
4.1 代码实现... 6
4.2运行界面实现... 10
5.系统测试... 12
6.结论和心得... 13
1 选题
选题一 |
算术运算测试 |
题目要求 |
|
计算机随机产生数实现十道100以内加减法数学题 能根据题目计算出答案 用户输入答案与答案对比 判断做题是否正确 最后计算分数。 |
|
使用Java知识 |
|
基本输入输入出、运算符、循环、选择分支 |
|
选题二 |
猜数游戏 |
题目要求 |
|
计算机产生0到100随机数, 用户猜测猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到。 显示猜的次数并且询问用户是否继续, 如果继续,可以继续玩。 |
|
使用Java知识 |
|
循环、分支、变量、常用类等 |
2 系统需求分析
2.1 系统可行性分析
1.技术上:编译环境 Ecplise Java语言
2.经济上:Ecplise 免费 补充知识来源免费
3.操作上:键盘录入 简单易行
4 法律上 符合
2.2 系统需求分析
1一、需求分析
1.算术运算测试: 计算机随机给出十道100以内加减法数学题,根据题目计算出答案,与输入答案对比,判断做题是否正确,最后计算分数
图:算数运算模块测试图
2.猜数游戏:计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到,显示猜的次数并且询问用户是否继续,如果选择y 可以继续
图 猜数游戏模块图
2.3 进度安排
阶段一进度安排如表3-1所示。
表3-1 进度安排表
阶段 |
持续时间 |
阶段描述 |
输出 |
构思阶段 |
1h |
需求分析 |
需求说明,功能模块图 |
设计阶段 |
4h |
系统设计 |
设计说明-可以画流程图;数据库设计 |
实现阶段 |
5h |
编写代码 |
项目工程源代码 |
1h |
系统测试 |
进行黑盒测试(功能测试)-测试说明 |
|
运行阶段 |
2h |
部署、运行 |
系统使用说明、运维报告、录制视频 |
3 系统设计
3.1 系统设计
根据系统的实际功能需求分析,对系统功能部分进行了设计
(1)算数运算测试
利用Random产生两个随机数。
再用Random随机获取一个0或者1做加减法 0做加法1做减法
答对或者答错都会有一个提示 答对每次加十分 答错不减分
用while循环控制做10道,最后根据对的题数给出总成绩
(2)猜数游戏测试
用Random得到随机数
用while(true)循环询问用户是否玩游戏
如果玩按y 不玩按n
用户猜测 可以提示猜大了或者小了
给出猜的次数
继续询问用户 按n结束游戏
4 系统实现
4.1 代码实现
一:算术运算测试
import java.util.Random;
import java.util.Scanner;
public class TestRandom {
public static void main(String[] args) {
int score=0;
Random rand = new Random();
Scanner input = new Scanner(System.in);
int count = 0;
while(count<10){
int a = rand.nextInt(100);//0-99随机数字
int b = rand.nextInt(100);//0到99随机的数字
int result = rand.nextInt(2);//0-1 0:加法 1:减法
if(result==0) {
result=a+b;
System.out.println(a+"+"+b+"=?");
}else
{
result=a-b;
System.out.println(a+"-"+b+"=?");
}
int yourGuess=input.nextInt();
if(yourGuess == result){
System.out.println("you are right");
score+=10;
}else {
System.out.println("you are wrong");
}
count++;
System.out.println("用户得分"+score);
}
}
}
二 猜数游戏
import java.util.Random;
import java.util.Scanner;
public class CaiShuZi {
public static int suijishu =new Random().nextInt(100);
public static void main(String[] args) {
while(true) {
System.out.println("玩游戏吗?请按y;或者按n");
Scanner input = new Scanner(System.in);
String s=input.next();
if(s.equals("y")) {
game();
}else if(s.equals("n")) {
System.out.println("jieshu");
break;
}
}
}
public static void game() {
Scanner input = new Scanner(System.in);
int guess;
int count=0;
System.out.println("有0到一百的一个随机数你猜一猜");
while(true) {;
guess=input.nextInt();
if(suijishu<guess) {
System.out.println("大了点,再猜");
count++;
}else if(suijishu>guess) {
System.out.println("小了点,再猜");
count++;
}else {count++;
break;
}
}
System.out.println("这个数字是"+suijishu);
System.out.println("你猜的次数是"+count);
}
}
4.2运行界面实现
图4.2-1算数运算测试运行图
游戏测试运行图
5.系统测试
表6-1 算数运算测试表
编号 |
测试功能 |
输入描述 |
预期结果 |
运行结果 |
1 |
随机给出题目功能 |
系统随机给出10道一百以内 加减法 |
可以自动出题,并且数字加减随机 |
正常,与预期结果一致 |
2 |
给出对错功能 |
用户输入答案和系统算出答案比较 |
可以正确提示对错 |
正常,与预期结果一致 |
3 |
给出分数 |
根据用户对的题数给出分数 |
可以正确给出分数 |
正常,与预期结果一致 |
表6-1 随机数测试表
编号 |
测试功能 |
输入描述 |
预期结果 |
运行结果 |
1 |
随机给出0到一百的数功能 |
系统随机一个数 |
可以 |
正常,与预期结果一致 |
2 |
提示功能 |
用户输入数字系统提示 |
可以正确提示 |
正常,与预期结果一致 |
3 |
给出分数 并且询问是否继续 |
给出用户猜的次数并且询问是否继续 |
可以正确给出次数 可以继续游戏 |
正常,与预期结果一致 |
6.结论和心得
网上好多的公共资源可以供我们参考学习,不仅有文字资源还有许多视屏资源供我们学习。还有遇到搞不懂的可以多找找资源,实在不行就问老师同学。还有以前学过的知识应该长复习,要不就会忘。