结对作业1
211606334 吴庭威 211606315 李昕洪
一、预估与实际
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | ||
• Estimate | • 估计这个任务需要多少时间 | 10 | 15 |
Development | 开发 | ||
• Analysis | • 需求分析 (包括学习新技术) | 30 | 200 |
• Design Spec | • 生成设计文档 | 20 | 30 |
• Design Review | • 设计复审 | 30 | 90 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 20 | 30 |
• Design | • 具体设计 | 30 | 40 |
• Coding | • 具体编码 | 30 | 100 |
• Code Review | • 代码复审 | 50 | 80 |
• Test | • 测试(自我测试,修改代码,提交修改) | ||
Reporting | 报告 | ||
• Test Repor | • 测试报告 | 45 | 55 |
• Size Measurement | • 计算工作量 | 30 | 60 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | ||
合计 | 700 |
二、需求分析
我通过上网查询的方式了解到,小学三年级数学有如下的几个特点:
-
特点1
-
运算符在2~4个
可以加括号
减法运算的结果不能有负数
除法运算除数不能为0,不能有余数
参与运算数字在0-99以内 -
特点2
-
四则运算应符合优先级
-
注意括号的有效性
三、设计
1. 设计思路
- 这个程序有1个类,3个函数
- 算法的关键的关键是生成表达式,以及优先级的判断。以及对出现负数和余数的处理。通过写两个函数实现,。
2. 实现方案
- 准备工作:先在Github上创建仓库,克隆到本地..
- 技术关键点:如何判断随机数的合理性,以及优先级的使用,还有表达式的生成。
四、编码
不知道怎么合理的随机生成运算符以及数据的合理性,还有生成表达式。曾尝试穷举法,发现不切实际,打消这个念头。后采取集合,队列的方式,但没有成功实现。
1. 调试日志
尝试运行
2. 关键代码
请展示一段程序的关键代码,并解释代码的作用
3. 代码规范
第一条:代码中的参数命名等符合规定。
第二条:保持缩进,良好的代码规范。
并人工检查代码是否符合规范
五、测试
没有实现功能,无结果
六、总结
基础知识薄弱,在数据结构这门课,没有深入学习,更没有实践。运用时,不会灵活的解决问题。在编码的过程中遇到了大的阻力,不能很好的解决问题。