| PSP2.1 | Personal Softwar Process Stages | Estimated Time(hours) | Practical Time(hours) |
| Planning | 计划 | 15 | 13 |
|
|
15 | 13 |
| Development | 开发 | 12 | 10 |
|
|
1 | 1 |
|
|
0.5 | 0.5 |
|
|
0.5 | 0.5 |
|
|
0.5 | 0.5 |
|
|
0.5 | 2 |
|
|
5 | 3 |
|
|
0.5 | 0.5 |
|
|
0.5 | 2 |
| Reporting | 报告 | 3 | 1.5 |
|
|
1 | 0.5 |
|
|
1 | 0.5 |
|
|
1 | 0.5 |
我通过网上查询了解到,小学一年级数学的加减运算特点如下:
小学二年级数学的乘除运算特点如下:
1.生成一年级减法数学计算题时,生成了结果为负数的算式。
2.生成二年级除法数学计算题时,生成了除数为0的算式。
3.生成二年级除法数学计算题时,生成了商小于1的算式。
System.out.println("请输入:想要生成的题目数(1-100) 生成几年级的题目(1或2年级)");
Scanner sc=new Scanner(System.in);
String input=sc.nextLine();
// 书写符合输入格式的正则表达式,过滤不符合格式的输入
String regex="(([1-9]|[1-9][0-9]|100)( ?)(1?|2{1}))";
int n;
int grade;
// 判断输入是否以空格结尾
int flag=0;
if(input.matches(regex)){
//只输入题目数的情况,如:10
for(int i=0;i<input.length();i++){
if((input.substring(i,i+1)).equals(" ")){
flag=1;
break;
}
}
if(flag==0){
n=Integer.valueOf(input);
grade=1;
getFirstGradeMathSubject(n, grade);
return ;
}
// 输入为题目数+一个空格的情况,如:10+一个空格
if(input.endsWith(" ")){
n=Integer.valueOf(input.substring(0, input.length()-1));
grade=1;
getFirstGradeMathSubject(n, grade);
return ;
}else{
// 输入符合格式,如:10 1或2时的情况
String[] spiltArray=null;
spiltArray=input.split(" ");
n=Integer.valueOf(spiltArray[0]);
grade=Integer.valueOf(spiltArray[1]);
if(grade==1){
getFirstGradeMathSubject(n, grade);
}else{
getSecondGradeMathSuject(n, grade);
}
return ;
}
}else{
System.out.println("输入格式错误!"
+ "请按照如下格式输入:\n想要生成的题目数(1-100)"+" "
+ "生成几年级的题目(1或2年级)"
+ "\n注:如果没有指定年级,则默认生成一年级数学的题目");
}
| 测试编号 | 具体输入 | 预期结果 | 实际结果 |
| 1 | 0 | 格式错误!请重新输入...... | 符合预期 |
| 2 | 10 | 正常执行,生成10道一年级加减运算题 | 符合预期 |
| 3 | 10 1 | 正常执行,生成10道一年级加减运算题 | 符合预期 |
| 4 | 10 2 | 正常执行,生成10道二年级乘除运算题 | 符合预期 |
| 5 | 10 3 | 格式错误!请重新输入...... | 符合预期 |
| 6 | 1000 | 格式错误!请重新输入...... | 符合预期 |
原文:https://www.cnblogs.com/anpaishangle/p/9588604.html