四年级联系
一、预估与实际
姓名1:张主强 学号1:211606391 姓名2:危利 学号2:211606380
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 500 | 1350 |
? Estimate | ? 估计这个任务需要多少时间 | 700 | 1100 |
Development | 开发 | 460 | 700 |
? Analysis | ? 需求分析 (包括学习新技术) | 40 | 60 |
? Design Spec | ? 生成设计文档 | 30 | 50 |
? Design Review | ? 设计复审 | 40 | 65 |
? Coding Standard | ? 代码规范 (为目前的开发制定合适的规范) | 40 | 70 |
? Design | ? 具体设计 | 650 | 700 |
? Coding | ? 具体编码 | 700 | 800 |
? Code Review | ? 代码复审 | 60 | 90 |
? Test | ? 测试(自我测试,修改代码,提交修改) | 80 | 120 |
Reporting | 报告 | 30 | 40 |
? Test Repor | ? 测试报告 | 60 | 80 |
? Size Measurement | ? 计算工作量 | 20 | 40 |
? Postmortem & Process Improvement Plan | ? 事后总结, 并提出过程改进计划 | 40 | 55 |
合计 | 1350 |
二、需求分析
我通过百度查资料的方式了解到,小学3年级数学有如下的几个特点:
- 特点1
加减乘除混合运算 - 特点2
-九九乘法表内的乘除
经过分析,我认为,这个程序应当:
在作业一上新增带括号的四则混合运算。
三、设计
1. 设计思路
-判断输入的题目数量和年级数字是否符合规范
-随机数的生成
-调用函数实现不同年级不同随机题目生成
-把运算符存进数组中
-打印结果及output.txt上
2. 实现方案
写出具体实现的步骤
- 准备工作:先在Github上创建仓库,克隆到本地,让队友FOK我的仓库
-技术关键点:输出至txt,还有加入四则混合运算。
四、编码
请说明你如何按照设计思路进行编码,并记录你在开发中遇到的问题,与解决过程
我先创建文件,然后通过创建数组的方式把变量设置好,然后用byte[] m = e.getBytes(); 以及in.write(m);的比特流的方式输出TXT文件
1. 调试日志
记录编码调试的日志,请记录下开发过程中的 debug 历程
-
在弄混合运算的时候没有注意优先级的使用导致运行有问题
public static void main(String[] args) throws Exception {
String QT[] = new String[1000]; //定义全局变量
String AS[] = new String[1000];
System.out.println("输入年级");
int []Grade=new int[args.length];
System.out.println("输入运行次数");
int []count=new int [args.length];
count[0]=Integer.parseInt(args[0]);
System.out.println();
Grade[0]=Integer.parseInt(args[1]);
File file =new File("out.txt");
FileOutputStream fops=null ;try { fops = new FileOutputStream(file); } catch (FileNotFoundException e) { e.printStackTrace(); } PrintStream ps= new PrintStream(fops); ps.println("211606391"); boolean f = true; if(Grade[0]==3 ){ for (int i=0;i<count[0];i++) { String data = Data(); String input = data; ss.add(input); if (input.equals("q")) break; else { Expression express = new Expression(input); f = express.getResult(); if(!f) i--; else ps.println(data + "=" + express.getExpresult()); } }
}
else if(Grade[0]==1)
{
jiajian(count);} else if(Grade[0]==2) { chengchu(count); } }
3. 代码规范
请给出本次实验使用的代码规范:
手动处理异常,不抛出。
合理利用开辟的空间
进行适当合理的代码注释,方便理解,修正
代码中不能使用拼音与英文混合的方式,更不允许直接使用中文的方式。
并自己检查代码是否符合规范
五、测试
请思考并记录你认为必要的测试点,并记录测试用例与测试结果
代码没添加混合运算还可以运行,弄完到最后运行不出来了....
六、总结
请总结过程中的教训和经验,思考
这次任务对我来说就一个字吧!!!!难!!!花了好长好长的时间!!!主要可能因为以前基础没有打好!!现在稍微一点问题都要去差百度,问同学,有些东西网上有也不会看,还是要从里面的
内容挑出来查询,但是到最后还是没能运行出来,只能说加油吧自己!!!下次作业一出来立马就开始写,问,查!!!希望老师能够体谅一下,谢谢!!!!