---恢复内容开始---
一、需求分析
leader给出项目需求,需要制作一个四则运算的试题的程序
二、需求分析
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
(3)题目数量可定制
(4)相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
(5)生成的运算题存储到外部文件result.txt中
三、设计实现
PrintStream 生成TXT文件;
Scanner 输入内容获取;
Math.random() 生成随机数;
println 输出内容显示;
四. 测试运行
五. 粘贴自己觉得比较独特的或满意的代码片段
因为对java不是很熟悉,所以使用了各种if的判断和for循环进行操作
for(int i=0;i<num;i++){ double x = Math.random()*imax; //生成第一个数 double y = Math.random()*imax; //生成第二个数 double m = 1; char l = 1; //生成负数 for(int p=0;p<2;p++){ if(fushu == 1){ m = (int)Math.random()*2; if( m == 0){ l = (char)'-'; } } } double z = 1; if(suanfa == 1){ z = Math.random()*2; //生成加减法 }else if(suanfa == 2){ z = Math.random()*4; //生成加减乘除法 }else if(suanfa == 3){ double n = 1; n = Math.random()*2; //生成加减法 z = n+2; } int one = (int)x; //生成第一个数 int two = (int)y; //生成第二个数 int three = (int)z; //生成加减符号 char four = 1; int five = 1; if(three==0){ if(one+two<=imax){ four = (char)'+'; if(m==0){ one = -one; two = -two; } five = one+two; System.out.println("测试加法"+one+" "+four+" "+two+"="+five); }else{ i--; } }else if(three==1){ if(one-two>=0){ four = (char)'-'; if(m==0){ one = -one; two = -two; } five = one-two; System.out.println("测试减法"+one+" "+four+" "+two+"="+five); }else{ i--; } }else if(three==2){ if(one*two<=imax){ four = (char)'*'; if(m==0){ one = -one; two = -two; } five = one*two; System.out.println("测试乘法"+one+" "+four+" "+two+"="+five); }else{ i--; } }else if(three==3){ if(one/two>=0){ four = (char)'/'; if(m==0){ one = -one; two = -two; } float six = (float)one/two; System.out.println("测试除法"+one+" "+four+" "+two+"="+six); }else{ i--; } } }
六. 总结:
通过编写这个程序,让我在java零基础上进行了各种学习,在各种百度的情况下了解了java的各种基本功能的实现,从而完成程序的各种需用的运行。
7. PSP
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min) |
Planning |
计划 |
3 |
1.5 |
Estimate |
估计这个任务需要多少时间,并规划大致工作步骤 |
2 |
1 |
Development |
开发 |
2 |
1 |
Analysis |
需求分析 (包括学习新技术) |
0.5 |
0.5 |
Design Spec |
生成设计文档 |
0 |
0 |
Design Review |
设计复审 (和同事审核设计文档) |
4 |
6 |
Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
3 |
3 |
Design |
具体设计 |
10 |
12 |
Coding |
具体编码 |
36 |
21 |
Code Review |
代码复审 |
7 |
9 |
Test |
测试(自我测试,修改代码,提交修改) |
13 |
21 |
Reporting |
报告 |
9 |
6 |
Test Report |
测试报告 |
3 |
2 |
Size Measurement |
计算工作量 |
2 |
1 |
Postmortem & Process Improvement Plan |
事后总结 ,并提出过程改进计划 |
3 |
3 |
PSP中没有预估的内容可以不写
---恢复内容结束---
一、需求分析
leader给出项目需求,需要制作一个四则运算的试题的程序
二、需求分析
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
(3)题目数量可定制
(4)相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
(5)生成的运算题存储到外部文件result.txt中
三、设计实现
PrintStream 生成TXT文件;
Scanner 输入内容获取;
Math.random() 生成随机数;
println 输出内容显示;
四. 测试运行
五. 粘贴自己觉得比较独特的或满意的代码片段
因为对java不是很熟悉,所以使用了各种if的判断和for循环进行操作
for(int i=0;i<num;i++){
double x = Math.random()imax; //生成第一个数
double y = Math.random()imax; //生成第二个数
double m = 1;
char l = 1; //生成负数
for(int p=0;p<2;p++){
if(fushu == 1){
m = (int)Math.random()2;
if( m == 0){
l = (char)'-';
}
}
}
double z = 1;
if(suanfa == 1){
z = Math.random()2; //生成加减法
}else if(suanfa == 2){
z = Math.random()4; //生成加减乘除法
}else if(suanfa == 3){
double n = 1;
n = Math.random()2; //生成加减法
z = n+2;
}
int one = (int)x; //生成第一个数
int two = (int)y; //生成第二个数
int three = (int)z; //生成加减符号
char four = 1;
int five = 1;
if(three==0){
if(one+two<=imax){
four = (char)'+';
if(m==0){
one = -one;
two = -two;
}
five = one+two;
System.out.println("测试加法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==1){
if(one-two>=0){
four = (char)'-';
if(m==0){
one = -one;
two = -two;
}
five = one-two;
System.out.println("测试减法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==2){
if(onetwo<=imax){
four = (char)'';
if(m==0){
one = -one;
two = -two;
}
five = one*two;
System.out.println("测试乘法"+one+" "+four+" "+two+"="+five);
}else{
i--;
}
}else if(three==3){
if(one/two>=0){
four = (char)'/';
if(m==0){
one = -one;
two = -two;
}
float six = (float)one/two;
System.out.println("测试除法"+one+" "+four+" "+two+"="+six);
}else{
i--;
}
}
}
六. 总结:
通过编写这个程序,让我在java零基础上进行了各种学习,在各种百度的情况下了解了java的各种基本功能的实现,从而完成程序的各种需用的运行。
- PSP
PSP2.1
任务内容
计划共完成需要的时间(min)
实际完成需要的时间(min)
Planning
计划
3
1.5
Estimate
估计这个任务需要多少时间,并规划大致工作步骤
2
1
Development
开发
2
1
Analysis
需求分析 (包括学习新技术)
0.5
0.5
Design Spec
生成设计文档
0
0
Design Review
设计复审 (和同事审核设计文档)
4
6
Coding Standard
代码规范 (为目前的开发制定合适的规范)
3
3
Design
具体设计
10
12
Coding
具体编码
36
21
Code Review
代码复审
7
9
Test
测试(自我测试,修改代码,提交修改)
13
21
Reporting
报告
9
6
Test Report
测试报告
3
2
Size Measurement
计算工作量
2
1
Postmortem & Process Improvement Plan
事后总结 ,并提出过程改进计划
3
3
PSP中没有预估的内容可以不写