第四次作业 【软件工程】小学四则运算 “软件”之初版
【软件工程】小学四则运算 “软件”之初版
作业要求来源于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2186
我的github远程仓库的地址:https://github.com/lengdongd/lengdong/tree/master/jisaun
一、实验要求
像《构建之法》的人物阿超那样,写一个能自动生成小学四则运算题目的命令行 “软件”。
具体要求:任何编程语言都可以,命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。例如输入数字是 30, 那就输出 30 道题目和答案。 运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。 如:
23 - 3 * 4 = 11
扩展要求:
1) 要求能出和真分数 (二分之一, 十二分之五,等)相关的练习题。
2) 并且要求能处理用户的输入,并判断对错,打分统计。 要求能处理用户输入的真分数, 如 1/2, 5/12 等。
初步拟定要实现的功能后,估计一下自己需要花多长时间。编程过程中记录自己实际用了多长时间。
然后和同学们比较一下各自程序的功能、实现方法的异同等等。
写博客纪录自己实现的过程和思路。
二、功能模块
1、模块设计:
(1)MainWork:主类,用于获取用户输入数据、输出获取的题目列表和答题情况
(2)produce:练习题工具类,用于生成题目列表
(3)coculate:练习题对象类,用于存储该题目的运算数、运算符和答案
三 、代码
文章上面github地址
四、运行结果
五:时间表
PSP2.1 | Personal Software Process Stages | Time Senior Student | Time |
Planning | 计划 | 20 | 30 |
.Estimate | 估计这个任务需要多少时间 | 20 | 30 |
Development | 开发 | 120 | 150 |
.Analysis | 需求分析 (包括学习新技术) | 20 | 15 |
.Design Spec | 生成设计文档 | 0 | 0 |
.Design Review | 设计复审 | 5 | 20 |
.Coding Standard | 代码规范 | 10 | 20 |
.Design | 具体设计 | 20 | 15 |
.Coding | 具体编码 | 35 | 120 |
.Code Review | 代码复审 | 10 | 30 |
.Test | 测试(自我测试,修改代码,提交修改) | 20 | 30 |
Reporting | 报告 | 9 | 10 |
· | 测试报告 | 4 | 10 |
· | 计算工作量 | 5 | 10 |
· | 并提出过程改进计划 | 0 | 0 |
一开始写代买的时候用C写,用的是穷举法,后来发现只能处理当前的问题,所以改用别的写法,运用算法,可以使得以后扩充性更加强大/