单次计算
import java.util.*;
class Main {
public static void main(String []args) {
//1. Generate two random single-digit integers
int number1 = (int)(Math.random() * 10);
int number2 = (int)(Math.random() * 10);
//2. If number1 < number2, swap number1 with number2
if(number1 < number2){
int temp = number1;
number1 = number2;
number2 = temp;
}
//3. Prompt the student to answer "What is number1 - number2?"
System.out.print("What is " + number1 +" - " + number2 + "?");
Scanner input = new Scanner(System.in);
int answer = input.nextInt();
//4. Grade the answer and display the result
if(number1 - number2 == answer){
System.out.println("Your answer is correct!");
}else{
System.out.println("Your answer is wrong\n" + number1 + " - "
+ number2 + "should be " + (number1-number2));
}
}
}
循环计算五道题
import java.util.*;
class Main {
public static void main(String []args) {
final int NUMBER_OF_QUESTIONS = 5;//Number of questions
int correctCount = 0;//Coutn the number of correct answers
int count = 0;//Count the number of questions
long startTime = System.currentTimeMillis();
String output = "";//output string is initially empty
Scanner input = new Scanner(System.in);
while(count < NUMBER_OF_QUESTIONS){
//1. Generate two random single-digit integers
int number1 = (int)(Math.random() * 10);
int number2 = (int)(Math.random() * 10);
//2. If number1 < number2, swap number1 with number2
if(number1 < number2){
int temp = number1;
number1 = number2;
number2 = temp;
}
//3. Prompt the student to answer "What is number1 - number2?"
System.out.print("What is " + number1 +" - " + number2 + "? ");
int answer = input.nextInt();
//4. Grade the answer and display the result
if(number1 - number2 == answer){
System.out.println("Your answer is correct!");
correctCount++;
}else{
System.out.println("Your answer is wrong\n" + number1 + " - "
+ number2 + " should be " + (number1-number2));
}
//Increase the count
count++;
output += "\n" + number1 + "-" + number2 + " = " + answer +
((number1 - number2 == answer) ? " correct" : " wrong");
}
long endTime = System.currentTimeMillis();
long testTime = endTime - startTime;
System.out.println("\nCorrect count is " + correctCount +
"\nWrong count is " + (NUMBER_OF_QUESTIONS - correctCount) +
"\nTest time is " + testTime / 1000 + " seconds\n" + output);
}
}
计算10道加法题
import java.util.*;
class Main {
public static void main(String []args) {
final int NUMBER_OF_QUESTIONS = 10;//Number of questions
int correctCount = 0;//Coutn the number of correct answers
long startTime = System.currentTimeMillis();
String output = "";//output string is initially empty
Scanner input = new Scanner(System.in);
for(int count = 0; count < NUMBER_OF_QUESTIONS;count++){
//1. Generate two random single-digit integers
int number1 = (int)(Math.random() * 100) % 15 + 1;
int number2 = (int)(Math.random() * 10) % 15 + 1;
//2. Prompt the student to answer "What is number1 + number2?"
System.out.print("What is " + number1 +" + " + number2 + "? ");
int answer = input.nextInt();
//3. Grade the answer and display the result
if(number1 + number2 == answer){
System.out.println("Your answer is correct!");
correctCount++;
}else{
System.out.println("Your answer is wrong\n" + number1 + " + "
+ number2 + " should be " + (number1+number2));
}
output += "\n" + number1 + " + " + number2 + " = " + answer +
((number1 + number2 == answer) ? " correct" : " wrong");
}
long endTime = System.currentTimeMillis();
long testTime = endTime - startTime;
System.out.println("\nCorrect count is " + correctCount +
"\nWrong count is " + (NUMBER_OF_QUESTIONS - correctCount) +
"\nTest time is " + testTime / 1000 + " seconds\n" + output);
}
}