三年级计算

mac2022-06-30  31

一、预估与实际

PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)Planning计划70008600• Estimate• 估计这个任务需要多少时间70008600Development开发• Analysis• 需求分析 (包括学习新技术)500630• Design Spec• 生成设计文档200230• Design Review• 设计复审5070• Coding Standard• 代码规范 (为目前的开发制定合适的规范)200350• Design• 具体设计700630• Coding• 具体编码900960• Code Review• 代码复审200390• Test• 测试(自我测试,修改代码,提交修改)200150Reporting报告200320• Test Repor• 测试报告100170• Size Measurement• 计算工作量200121• Postmortem & Process Improvement Plan• 事后总结, 并提出过程改进计划合计

二、需求分析

我通过上网百度和实践问答的方式了解到,小学三年级四则混合运算有如下的几个特点: 1.运算符在2~4个 2.可以加括号进行优先级运算 3.减法运算的结果不能为负数 4.除法运算除数不为零,不能有余数,必须要能整除 5.先乘除后加减,有括号的括号内的先运算 经过分析,我认为,这个程序应当: 1.减法运算的结果不能有负数 2.除法运算除数不能为0,不能有余数 3.使用的数字0~100

三、设计

1. 设计思路

这个程序有一个类,八个方法(一个重构方法) 产生随机数字和两数运算时: 1.保证两个数字不超过50; 2.如果是加法运算的话,两个数字的和不超过100; 3.如果是减法运算的话,不应该产生结果为负数的式子; 4.设计三年级的函数gradeThree 5.在判断年级的函数judgeGrade内添加运行gradeThree的情况

2. 实现方案

写出具体实现的步骤 ReversePolishNotation()将原始式子转化为后缀形式(逆波兰) stack(String zf)将传入的字符传入存放字符的栈中 judge(String str1, String str2)判断两个传入的字符的优先级哪个高 生成三个0~100随机数 利用random函数+sigh数组随机获取两个运算符 生成题号和题目 按顺序判断第一个运算符号和第二个运算符号 遵循先乘除后加减原则,将预算结果存入answer变量中

四、编码

请说明你如何按照设计思路进行编码,并记录你在开发中遇到的问题,与解决过程

1. 调试日志

运用逆波兰公式的时候忘记加入优先级,导致只能按顺序加减乘除,不会出现先乘除后加减的正确结果。 输出到文本的时候遇到了问题,使用System.setOut(ps); 可以输出到out.txt文本中,但是不能输出的到命令窗口中;使用System.out.println(ps); 则相反

2. 关键代码

3. 代码规范

请给出本次实验使用的代码规范:

做好缩进和利用空行分隔 单行字符数限制不超过120个 并人工检查代码是否符合规范

五、测试

测试两种输入方式 测试三个年段都能运行

六、总结

写代码前要先构思一遍,可以现在文档中先写伪代码,先写出整体框架,再去细化,一定一定要先构思,不要边写边想 要考虑到各种情况,针对各种情况改写代码! 四则运算的优先级问题非常复杂

转载于:https://www.cnblogs.com/jmj1/p/9673405.html

相关资源:三年级上册数学乘法计算题.xdf
最新回复(0)