20165312 结对学习 四则运算

20165312 结对学习 四则运算

我和我的cooperate起初认为四则运算很简单,因为书上就有一个类似的代码,但是看过具体要求之后,才发现需要系统自动生成算式,这就需要用到随机数的知识(包括数字以及加减乘除运算的随机性),我们上网查找了一些代码资料,发现邹欣老师曾经布置过类似的作业,发现了很多逻辑清楚的代码(代码1代码2代码3……)但是说实话,我们这周完成的代码在我们看来还是有很多的问题。。需要再下一周的结对学习中进一步改进。

一、码云链接

二、需求分析

  • 实现一个命令行程序,要求:自动生成小学四则运算题目(加、减、乘、除)
  • 可实现多个运算符一起运算
  • 可以真分数形式输出结果
  • 测试结果的正确性
  • 统计题目完成数并计算正确率

三、设计思路

  • 从命令行输入参数n,然后随机产生n道加减乘除练习题。
  • 从命令行输入参数m,保证所有的运算在m以内
  • 程序随机产生n道m以内的加减乘除运算题
  • 从命令行输入n道题目的答案
  • 程序判断答案正确,输出正确错误题目的数目以及题号。并将n道题目存入Exercise.txt中,答案存入Grade.txt中

四、运行结果截图

五、本代码存在的几个问题

  • 本代码中的四则运算仅针对整数型运算,有局限性
  • 若允许的四则运算范围过大,会报错
  • 系统随机产生的算术式的符号为中缀表达式,容易产生误解,若修改为后缀表达式更佳
  • 若在输入算术表达式结果为非整形时,系统不会提示输入错误,而是直接报错,用户体验不佳
  • 算术表达式产生的Exercise.txt文件中,算术表达式会比我们键盘输入的表达式的个数少1
  • 系统随机产生的算术表达式仅是计算一次的加减乘除运算,没有混合运算

六、结对学习的感受

  • 两个人一起在网上找资料,可以提高效率
  • 有一个“领航员”在“驾驶员”的身旁,可以更加客观的检查代码的用户体验、临界情况,更能发现代码中的问题。吴思佳在测试我们共同写的代码的时候,就发现了很多我没有发现的问题,这就可以让我们的程序更加完善吧
  • 这道题目我们觉得还是有些难的,随机数的使用以及整个程序各个细节的思考之类的,但是有个搭档在一起感觉学习都有了监督和动力吧
  • 第一周的完成程度差强人意,还存在很多问题,可能不止我们自己发现的这些,但是我们会在第二周继续加油的,继续完成接下来的深层次要求吧。

七、PSP

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 120
Estimate 估计这个任务需要多少时间 360 600
Development 开发 200 400
Analysis 需求分析 (包括学习新技术) 60 120
Design Spec 生成设计文档 30 45
Design Review 设计复审 (和同事审核设计文档) 30 120
Coding Standard 代码规范 (为目前的开发制定合适的规范) 40 150
Design 具体设计 50 40
Coding 具体编码 180 260
Code Review 代码复审 30 50
Test 测试(自我测试,修改代码,提交修改) 60 90
Reporting 报告 30 30
Test Report 测试报告 30 30
Size Measurement 计算工作量 30 20
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 60 120
合计 1250 2195
参考链接:[结对编程项目-四则运算]http://www.cnblogs.com/vertextao/p/6593339.html)
posted on 2018-04-15 22:29  歌儿  阅读(178)  评论(0编辑  收藏  举报