20165202 结对编程 四则运算 第二周

一、码云链接

二、需求分析

  • 实现一个命令行程序,要求:
  • 自动生成小学四则运算题目(加、减、乘、除)
  • 支持整数
  • 支持多运算符(比如生成包含100个运算符的题目)
  • 支持真分数
  • 统计正确率

三、设计思路(同时输出UML类图)

这周的总体设计要在上周的基础上深化,上周我们的代码没有用到中缀表达式转后缀表达式,没有用到栈,所以这周不仅要对上一周的代码进行修改,而且还要在此基础上完成更深层的对真分数的要求。

实现四则运算中后缀转换类

实现四则运算后缀表达式计算类

实现四则运算真分数计算类

实现四则运算生成题目并判断正误

  • 题目生成
  • 可以独立使用
  • 可以选择生成的题目数量
  • 题目运算及正误判断
  • 用到中缀表达式转后缀表达式
  • 实现四则运算真分数的计算
  • 实现四则运算生成题目并判断正误
  • 支持多语言系统

创建一个真分数类

创建一个后缀表达式的计算类

创建一个后缀表达式转中缀表达式的转换类

题目生成并判断正误

计算正确率

四、功能截图

五、结对感受

第一次正式合作结对编程,题目有一定难度所以我们在讨论设计的过程中花费了较多时间。虽然此前也接触过四则运算的编程题目,但这个项目的要求明显要高,多了很多额外条件。如果我一个人做的话,很可能因为题目的繁琐而消极怠工,无法完成。但通过我们两个人共同查阅资料,不断地交流、修改、讨论,终于解决了本题目也算是有一点点合作的成就感。我的编程水平不如李梓豪,很多时候他考虑问题要周全的多,所以在日后的合作中我还是要加强学习,努力完善自己的思维,提高自身能力。

六、PSP表格

PSP Personal Software Process Stages) 预估耗时(分钟)) 实际耗时(分钟)
Planning 计划 30 30
Estimate 估计这个任务需要多少时间 90 120
Development 开发 40 60
Analysis 需求分析 (包括学习新技术) 30 40
Design Spec 生成设计文档 10 15
Design Review 设计复审 (和同事审核设计文档) 25 20
Coding Standard 代码规范 (为目前的开发制定合适的规范) 15 30
Design 具体设计 60 75
Coding 具体编码 100 125
Code Review 代码复审 30 25
Test 测试(自我测试,修改代码,提交修改) 50 75
Reporting 报告 10 20
Test Report 测试报告 20 25
Size Measurement 计算工作量 10 20
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 60 80
合计 580 825

七、参考或引用的设计、实现

猜你喜欢

转载自www.cnblogs.com/jhs888/p/8910100.html