个人作业1——四则运算题目生成程序(基于控制台)
2017-03-08 09:07 徐璨 阅读(378) 评论(1) 编辑 收藏 举报源码地址:https://git.coding.net/xucan0110/first.git
1.需求分析:
现代社会不仅提笔忘字现象严重,人们也更加依赖于计算器,这个程序不仅可以满足小学生学习的检测,亦可作为成年人提升自己计算能力的练习工具
2.功能分析:
我将本次作业分析为两大部分:a.基本的四则运算及正误判断(包括整数与真分数两部分,分别涉及“加减乘除”);
b.题目的生成(包括数的随机调用与运算符号的随机调用,以及两者间的随机组合);
3.设计实现:用C++语言实现
先将四则运算分为整数与分数两部分,整数不用说。分数则是采用辗转相除法求最大公约数的方法先判断是否为真分数,然后再用最小公倍数法求出结果。
题目的生成则随机调用0到9自由组成分数或整数,再与任一运算符号结合即可。
4.代码说明:
a.随机选取运算符号的实现
char Operator()
{
c.辗转相除法实现求最大公约数
int maxNumber(int k, int l)
6.展示psp
PSP2.1 | Personal Software Process Stages | Time (m) Senior Student | Time (m) |
Planning | 计划 | 10 | 20 |
· Estimate | 估计这个任务需要多少时间 | 288 | 367 |
Development | 开发 | 90 | 120 |
· Analysis | 需求分析 (包括学习新技术) | 10 | 20 |
· Design Spec | 生成设计文档 | 5 | 5 |
· Design Review | 设计复审 | 5 | 6 |
· Coding Standard | 代码规范 | 3 | 2 |
· Design | 具体设计 | 10 | 15 |
· Coding | 具体编码 | 20 | 30 |
· Code Review | 代码复审 | 10 | 30 |
· Test | 测试(自我测试,修改代码,提交修改) | 20 | 100 |
Reporting | 报告 | 10 | 30 |
· | 测试报告 | 5 | 2 |
· | 计算工作量 | 5 | 2 |
· | 并提出过程改进计划 | 5 | 5 |
7.小结
本次作业看上去并不十分困难,在计划中也以为不会花费很多时间,但事实证明,看上去简单的东西并不意味实施起来容易。
拿到作业的最初就有了一个大概的思路,但是当我真正顺着这个思路往细节思考的时候,发现需要解决的问题还很多。在代码测试的阶段花费了很多时间,因为
出现了很多错误,有些是因为自己的失误,有些是因为编译器的问题,最后是百度加上同学的帮助才解决的大部分问题。
发现自己在代码编还差得很远,以后应多加强练习,加强编码速度,提高编码正确率。