这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Networkengineering1834 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/Networkengineering1834/homework/11148 |
这个作业的目标 | 学习如何结对完成项目、练习 PSP 的使用 |
1.学生信息
3118005340 伍镇江 github地址:https://github.com/Zangong-Wu/-
这个是由我和一个软件工程专业的同学共同完成的,所以只有我一个人的信息。
2.PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 50 |
· Estimate | · 估计这个任务需要多少时间 | 30 | 40 |
Development | 开发 | 1200 | 1800 |
· Analysis | · 需求分析 (包括学习新技术) | 250 | 360 |
· Design Spec | · 生成设计文档 | 30 | 50 |
· Design Review | · 设计复审 | 60 | 120 |
· Coding Standard | · 代码规范 (为目前的开发制定合适的规范) | 30 | 30 |
· Design | · 具体设计 | 30 | 40 |
· Coding | · 具体编码 | 200 | 240 |
· Code Review | · 代码复审 | 30 | 20 |
· Test | · 测试(自我测试,修改代码,提交修改) | 90 | 100 |
Reporting | 报告 | 40 | 30 |
· Test Repor | · 测试报告 | 40 | 40 |
· Size Measurement | · 计算工作量 | 30 | 30 |
· Postmortem & Process Improvement Plan | · 事后总结, 并提出过程改进计划 | 40 | 50 |
· 合计 | 2130 | 2920 |
3.项目结构展示
4.关键算法实现部分
符号生成部分:
利用数组存储要生成的符号,利用随机函数确定使用哪个符号,并且运算符的数量也是随机,最大不超过3个。
查重部分:
利用list<list
其中我还增加了一个计算器,输入字符串等式可以计算出结果:
5.效能分析
可以看到generate方法占用的内存最多用时也是最久的。
6.测试结果
输入-n 10 -r 20:
输入-n 10000 -r 5:
输入 -t:
输入十道题答案时: