一、题目
请编写一个能自动生成小学四则运算题目的 “软件”。
让程序能接受用户输入答案,并判定对错。
最后给出总共 对/错 的数量。
二、需求分析
本程序适合小学生,锻炼自己的运算能力。练习的软件。
三、 基本需求
1、 显示题目数量
2、 逐个自动显示题目
3、 用户可以逐题解答
4、 显示答题对错
5、统计对错数量
四、代码实现
import java.util.Scanner;
public class Calculator {
public static int suiji(int num1,int num2){
int C=(int)num1+(int)(Math.random()*(num2-num1));
return C;
}
public static void main(String[] args) {
int S,a,b,i=1,f=0,h=0;
double D;
while(i<=5){
S=suiji(1,4);
i=i+1;
a=suiji(0,100);
b=suiji(0,100);
switch(S){
case 1 :
System.out.println(a+"+"+b+"=");
Scanner reader=new Scanner(System.in);
D=reader.nextInt();
if(D==a+b){
h++;
}
else{
System.out.println("答错了,正确答案是:"+(a+b));
}
break;
case 2 :
System.out.println(a+"*"+b+"=");
Scanner reader1=new Scanner(System.in);
D=reader1.nextInt();
if(D==a*b){
h++;
}
else{
System.out.println("答错了,正确答案是:"+(a*b));
}
break;
case 3 :
System.out.println(a+"-"+b+"=");
Scanner reader2=new Scanner(System.in);
D=reader2.nextInt();
if(D==a-b){
h++;
}
else{
System.out.println("答错了,正确答案是:"+(a-b));
}
break;
case 4 :
System.out.println(a+"/"+b+"=");
Scanner reader3=new Scanner(System.in);
D=reader3.nextInt();
if(D==a/b){
h++;
}
else{
System.out.println("答错了,正确答案是:"+(a/b));
}
break;
}
continue;
}
System.out.println("您一共答对了"+h+"道题");
}
}
五:运行结果:
六、分析和总结
软件设计是一个连续性的过程,这个过程需要有严谨的构思和缜密的逻辑思维,在该程序的设计中,运用了自己熟悉的JAVA语言相对C++来说更容易些,本想设计成JAVA Swing图形界面的程序,但由于时间的限制,没能进行,以后利用空余时间来尝试写程序,以此来提升自己的编程能力!
七、PSP统计表格