1.需求分析
使用C或Java语言完成一个自动生成四则运算试题的程序,该程序可以让二年级到四年级都能使用,题目多样化。
生成的题目避免重复,可以定制数量和打印方式,自己控制相关参数,比如是否有乘除法等操作。
2. 功能设计
- 基本功能
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
- 扩展功能
(3)题目数量可定制
(4)相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
(5)生成的运算题存储到外部文件result.txt中
3. 设计实现
只涉及一个类完成四则运算过程,在该类中我们有着控制输入题目数量和操作数的有效生成范围,同时可以选择是否
添加乘法和除法等。
1 int i,k; 2 char operator []={'+','-','*','/'};//运算符 3 int n=1; 4 System.out.println("简单四则运算式"); 5 System.out.print("请输入需要生成题目数:"); 6 Scanner sc = new Scanner(System.in); 7 int votenum=sc.nextInt(); //题目数量 8 System.out.print("请输入操作数的最大值:1~"); 9 //Scanner sc = new Scanner(System.in); 10 //int votenum=sc.nextInt(); //题目数量 11 int max=sc.nextInt(); //操作数的最大值 12 System.out.print("是否添加乘法和除法?1||0?:"); 13 int choose=sc.nextInt();
4.测试运行
5.操作数的生成代码
if(choose==1){ for(int j=1;;j++){ i=(int)(1+Math.random()*(max-1+1));//输出一个随机数(1-100) k=(int)(1+Math.random()*(max-1+1));//输出一个随机数(1-100) char fuhao; int index = (int)(Math.random()*operator.length);fuhao=operator[index]; int num;if(fuhao=='+'){ num=i+k; if(num<100&&n<votenum){ System.out.println("第"+n+"题:"+i+""+fuhao+""+k+"=");n++; }else{continue;} }else if(fuhao=='*'){ num=i*k; if(num<100&&n<10){ System.out.println("第"+n+"题:"+i+""+fuhao+""+k+"=");n++; }else{continue;} }else if(fuhao=='-'){ num=i-k; if(num<100&&n<10){ System.out.println("第"+n+"题:"+i+""+fuhao+""+k+"=");n++; }else{continue;} }else if(fuhao=='/'){ num=i/k; if(num<100&&n<10){ System.out.println("第"+n+"题:"+i+""+fuhao+""+k+"=");n++; }else{continue;} } } }
6.PsP
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min) |
Planning |
计划 |
15 |
20 |
· Estimate |
· 估计这个任务需要多少时间,并规划大致工作步骤 |
15 |
20 |
Development |
开发 |
10 |
12 |
·· Analysis |
需求分析 (包括学习新技术) |
2 |
|
· Design Review |
· 设计复审 (和同事审核设计文档) |
0 |
0 |
· Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
3 |
3 |
· Design |
具体设计 |
0 |
0 |
· Coding |
具体编码 |
10 |
15 |
· Code Review |
· 代码复审 |
3 |
3 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
5 |
5 |
Reporting |
报告 |
9 |
6 |
·· Test Report |
· 测试报告 |
3 |
2 |
· Size Measurement |
计算工作量 |
2 |
1 |
· Postmortem & Process Improvement Plan |
· 事后总结 ,并提出过程改进计划 |
3 |
3 |