四则运算

作业来源于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2166

github地址:https://github.com/201606120051/zqq/tree/master/rg

一:作业要求:

      像《构建之法》的人物阿超那样,写一个能自动生成小学四则运算题目的命令行 “软件”。
具体要求:任何编程语言都可以,命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。例如输入数字是 30, 那就输出 30 道题目和答案。 运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。 如:

23 - 3 * 4 = 11

扩展要求:

1) 要求能出和真分数 (二分之一, 十二分之五,等)相关的练习题。

2) 并且要求能处理用户的输入,并判断对错,打分统计。 要求能处理用户输入的真分数, 如 1/2, 5/12 等。

初步拟定要实现的功能后,估计一下自己需要花多长时间。编程过程中记录自己实际用了多长时间。

二:个人软件过程耗时估计与统计表

1.PSP模版表格如下

PSP2.1 Personal Software Process Stages Time Senior Student(h) Time(h)
Planning 计划 2 2
· Estimate 估计这个任务需要多少时间 22 25
Development 开发    
· Analysis 需求分析 (包括学习新技术) 1 1
· Design Spec 生成设计文档    
· Design Review 设计复审    
· Coding Standard 代码规范 0.5 0.8
· Design 具体设计 1 2
· Coding 具体编码 6 12
· Code Review 代码复审 1 2.5
· Test 测试(自我测试,修改代码,提交修改) 2 1.5
Reporting 报告    
· 测试报告    
· 计算工作量 2 1
· 并提出过程改进计划 1 2

2.详细设计:

功能介绍:

实现了整数和正分数的计算、

由用户自己选择整数和真分数、

由用户自己选择题目数量,取值范围、

由用户自己选择是否显示答案

缺点:没有成绩统计,约分是分子和分母相同的情况下显示的是a/a而不是1。

详细设计:

语言:Java   开发环境:idea

通过Math.random()实现随机产生整数或者真分数;

通过多重判断实现四个不同符号的计算。

三:主要代码和运行结果

1.主要代码

约分:

整数计算:

真分数计算:

2.运行结果:

四:总结

        在这次实验中,一开始毫无头绪,不知道要从何下手,后来在查找百度和资料后有了头绪。在实验中比较难的是约分和真分数的判断,一开始不知道怎么做判断,后来反复琢磨,反复试验之后终于有了进展,但是约分还是不太理想,分子和分母相同的情况下不能化为1。还有一个缺陷就是不能做答,所以不能计分,没有做判断对错的部分,而是直接给出答案,这是一个不太理想的地方,后续有待改进。

原文地址:https://www.cnblogs.com/zhangqianqian/p/9764165.html