标签:spec 随机数 类型 dev hex 写入文件 测试用例 超过 查询
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | ||
? Estimate | ? 估计这个任务需要多少时间 | 10 | 10 |
Development | 开发 | ||
? Analysis | ? 需求分析 (包括学习新技术) | 30 | 60 |
? Design Spec | ? 生成设计文档 | 30 | 30 |
? Design Review | ? 设计复审 | 30 | 30 |
? Coding Standard | ? 代码规范 (为目前的开发制定合适的规范) | 5 | 5 |
? Design | ? 具体设计 | 30 | 40 |
? Coding | ? 具体编码 | 120 | 180 |
? Test | ? 测试(自我测试,修改代码,提交修改) | 30 | 30 |
Reporting | 报告 | ||
? Test Repor | ? 测试报告 | 30 | 30 |
? Size Measurement | ? 计算工作量 | 10 | 20 |
? Postmortem & Process Improvement Plan | ? 事后总结, 并提出过程改进计划 | 60 | 60 |
合计 | 495 |
我通过查询教学大纲及研究相关试卷的方式了解到,小学一年级及二年级数学有如下的几个特点:
经过分析,我认为,这个程序应当:
在主函数中判断参数时我直接将String类型的参数通过Integer.parseInt()方法转换成数值,当参数为非数值时程序则会出错。处理方法:用一个函数判断输入参数是否为数字字符串,最后再将字符串参数转为int型数值
在主函数中,将字符串转为int型数值时,若传入参数数值超过int型数值范围则程序出错。处理方法:考虑到实际情况,用户需要的题目数量本就不需要太多,则可以直接限制出题数量,在判断完传入的参数字符串是数字串后直接限制字符串的长度不超过4,则可以保证数值不大于9999。
请展示一段程序的关键代码,并解释代码的作用
public static boolean checkOne() {
a = (int) (0 + Math.random() * (100 - 0 + 1));
b = (int) (0 + Math.random() * (100 - 0 + 1));
// sym为1即为正,2即为负
sym = (int) (1 + Math.random() * (2 - 1 + 1));
if (sym == 1) {
if ((a + b) > 100) {
return false;
} else {
return true;
}
} else {
if ((a - b) < 0) {
return false;
} else {
return true;
}
}
}
public static void mathOne(int n) {
String prob;
String ans;
ArrayList<String> probs = new ArrayList<String>();
ArrayList<String> anss = new ArrayList<String>();
boolean end = false;
for (int i = 1; i <= n; i++) {
do {
end = checkOne();
} while (!end);
// sym为1即为正,2即为负
if (sym == 1) {
prob = "(" + i + ")" + " " + a + " " + "+" + " " + b;
ans = "(" + i + ")" + " " + a + " " + "+" + " " + b + " " + "=" + " " + (a + b);
} else {
prob = "(" + i + ")" + " " + a + " " + "-" + " " + b;
ans = "(" + i + ")" + " " + a + " " + "-" + " " + b + " " + "=" + " " + (a - b);
}
probs.add(prob);
anss.add(ans);
}
}
请给出本次实验使用的代码规范:
请思考并记录你认为必要的测试点,并记录测试用例与测试结果
测试项目 | 测试语句 | 预期结果 | 测试结果 |
---|---|---|---|
不输入任何参数 | java MathExam4269 | 输入的参数个数不为2,请重试 | 输入的参数个数不为2,请重试 |
输入一个参数 | java MathExam4269 20 | 输入的参数个数不为2,请重试 | 输入的参数个数不为2,请重试 |
输入二个参数 | java MathExam4269 20 1 | 成功写入20道一年级题目到文件out.txt | 成功写入20道一年级题目到文件out.txt |
输入二个参数且第一个参数小于0 | java MathExam4269 -10 1 | 输入有误,请重新输入 | 输入有误,请重新输入 |
输入二个参数且第一个参数大于9999 | java MathExam4269 10000 1 | 输入题数过大,请重试 | 输入题数过大,请重试 |
输入二个参数且第二个参数不为1和2 | java MathExam4269 20 5 | 输入的年级有误,请重试 | 输入的年级有误,请重试 |
开始时应该花更多时间分析需求,设计程序架构,能为后续的开发提高很多效率
要考虑到后续可能的升级,把需要的功能拆分成函数,专门的功能由专门的函数处理
重复的代码太多,需要进一步优化
调试程序时要考虑到尽可能多的情况
标签:spec 随机数 类型 dev hex 写入文件 测试用例 超过 查询
原文地址:https://www.cnblogs.com/lk123/p/9630840.html