一、需求分析
需要自动生成四则运算试题的程序,取值范围在100以内,操作数是否含负数,剔除重复算式,显示在外部文件result.txt中。
二、功能实现:
·基本功能
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)题目数量可定制。
(3)相关参数可控制。
是否包含乘法和除法。
操作数数值范围可控(如操作数 在100以内 还是1000以内)。
操作数是否含负数。
三、设计实现:
1.引入的包。
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.util.Scanner;
import java.util.Random;
2.运用random实现随机数的生成‘’
Random r = new Random();
int a = r.nextInt()%100+1;//生成数的范围是100以内的
int b = r.nextInt()%100+1;//生成数的范围是100以内的
3.运用Java语言以及一些方法来实现基本功能。
四、测试运行:
基本功能的测试,自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内。包含乘法和除法, 操作数数值范围可控(如操作数 在100以内 还是1000以内),操作数是否含负数也可控。
五、比较满意的代码片段:
System.out.print("请输入题目个数:");
int tg = t.nextInt();
//控制题目个数
System.out.print("请输入操作数的范围(如 100,1000等):");
int tf = t.nextInt();
//控制题目范围
System.out.println("请选择是否有负数:1:有 0:没有");
int zf = t.nextInt();
//控制正负数
System.out.println("请选择是否包含*或者/:2:否 4:是 ");
int fu = t.nextInt();
//控制符号
System.setOut(ps);
六、总结
觉得自己以前学习的东西都忘了好多,看到题目时的第一个想法就是“我不会”,后来翻看了一下以前的课本,又去网上百度了一下一些方法,实现了一些基本功能,五个基本功能,我只实现了三个,
查重和存储到外部文件并没有实现,以后会继续努力,不断实现。
七、PSP
PSP2.1 | 任务内容 | 计划共完成需要的时间(min) | 实际完成需要的时间(min) |
Planning | 计划 | 10 | 15 |
· Estimate | · 估计这个任务需要多少时间,并规划大致工作步骤 | 5 | 6 |
Development | 开发 | 60 | 120 |
·· Analysis | 需求分析 (包括学习新技术) | 20 | 50 |
· Design Spec | · 生成设计文档 | 10 | 15 |
· Design Review | · 设计复审 (和同事审核设计文档) | 5 | 10 |
· Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 5 | 5 |
· Design | 具体设计 | 20 | 30 |
· Coding | 具体编码 | 30 | 50 |
· Code Review | · 代码复审 | 5 | 10 |
· Test | · 测试(自我测试,修改代码,提交修改) | 9 | 15 |
Reporting | 报告 | 10 | 20 |
·· Test Report | · 测试报告 | 3 | 3 |
· Size Measurement | 计算工作量 | 2 | 1 |
· Postmortem & Process Improvement Plan | · 事后总结 ,并提出过程改进计划 | 5 | 5 |