结对项目:自动生成小学四则运算题目

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Networkengineering1834/homework/11148
这个作业的目标 双人合作实现一个自动生成小学四则运算题目的命令行程序

项目成员

张灏楠 (3118005298)
张名铭 (3118005299)

Github项目地址

https://github.com/baimaguye/szys

PSP表格

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

性能分析

数据占用内存

模块时间消耗

时间占用百分比

CPU占用频率

设计实现流程

文件工程结构

Calculate类:计算答案
Check类:检查式子是否重复
Create类:生成式子
FlieW类:将生成的习题和答案写入文件中
Main类:程序交互模块

流程设计图

测试运行

指令输入:

生成Exersises.txt,成功生成题目:

生成Answers.txt,查看答案:

生成统计文件Grade.txt:

在Answers.txt中改错8,9题的答案:

对比统计文件Grade.txt:

生成10000道题目:

项目小结

这次项目遇到了许多困难,假分数转换为真分数和算术式的计算对我们来说比较困难,但是经过了我和结对伙伴一起讨论,以及一起上网摸索,我们还是渐渐的攻克了困难。两个人的结对主要在于沟通方面,而我是和我的宿友结对的,因此我们在沟通上面没有什么阻碍。算术式的生成是通过创建运算符数组和操作数数组后,再通过循环调用来组合。对式子的重复也是先判断其长度筛选一部分式子再做进一步的判断。虽然做到最后还是有一点不足,但我们在这一次的结对项目中收获到了许多。

posted @ 2020-10-13 01:06  白马枯叶  阅读(117)  评论(0编辑  收藏  举报