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