个人作业1——四则运算题目生成程序(基于控制台)
No.1 四则运算题目生成程序(基于控制台)
需求分析:
能够根据用户自身对题目数量的需求自动生成一定数量的包含分数的四则运算题目的命令行程序。
功能设计:
- 除了整数以外,还要支持真分数的四则运算,真分数的运算
- 并且要求能处理用户的输入,并判断对错,打分统计正确率
- 要求能处理用户输入的真分数
- 使用 -n 参数控制生成题目的个数
设计实现:
程序是用java实现的,主要有三个类,M为主菜单,zhengshu是负责整数的四则运算,fenshu是负责分数的四则运算,用随机数来所处的题目是整数还是分数。
代码说明:
a是整数四则运算,b是分数四则运算
Random rand = new Random(); Scanner in=new Scanner(System.in); n=Integer.parseInt(args[0]); zhengshu a=new zhengshu(); fenshu b=new fenshu(); for(;i<n;i++) { choice=rand.nextInt(2)+1; if(choice==1) { a.main(null); } else { b.main(null); } }
求分数分子与分母最大公约数,用于化简
public static int f(int a,int b){ if(a < b){ int c = a; a = b; b = c; } int r = a % b; while(r != 0){ a = b; b = r;; r = a % b; } return b; }
测试运行:
PSP:
PSP2.1 |
Personal Software Process Stages |
Time(min) Senior Student |
Time (min) |
Planning |
计划 |
5 |
5 |
Estimate |
估计这个任务需要多少时间 |
5 |
3 |
Development |
开发 |
20 |
30 |
Analysis |
需求分析 (包括学习新技术) |
3 |
20 |
·Design Spec |
生成设计文档 |
5 |
3 |
·Design Review |
设计复审 |
1 |
1 |
Coding Standard |
代码规范 |
20 |
15 |
· Design |
具体设计
|
15 |
10 |
Coding |
具体编码 |
30 |
50 |
·Code Review |
代码复审
|
10 |
10 |
Test |
测试(自我测试,修改代码,提交修改) |
15 |
20 |
Reporting |
报告 |
10 |
10 |
|
测试报告 |
3 |
3 |
|
计算工作量 |
3 |
5 |
|
并提出过程改进计划 |
5 |
0 |
小结:平时编程量比较少,然后导致小问题不断,效率不高,程序虽然简单但是时间却花的比较多,加上不够严谨需要反复回头去修改。