不包括猜中的情況,第一次判斷需要兩次,第二次判斷需要四次,每一次都是兩倍的增長,還都是類似的語句。不多說,請看:
public static void main(String[] args) {
//輸入工具
Scanner input = new Scanner(System.in);
System.out.print("輸入一個1~10的正整數:");
//鍵盤輸入數num
int num = input.nextInt();
//隨機產生一個數
Random rd = new Random();
int num1 = rd.nextInt(10)+1;
//標識是否進行第三步判斷:
boolean flag = false;
//第一次判斷
if(num == num1) {
System.out.println("恭喜。");
flag = true;
}
if(num > num1) {
System.out.println("請輸入1到"+ num + "之間的數:");
//第二次輸入
int num2 = input.nextInt();
//第二次判斷
if(num2 == num1) {
System.out.println("恭喜。");
flag = true;
}
if(num2 > num1) {
System.out.println("請輸入1到"+ num2 + "之間的數:");
}else if(num2 < num1) {
System.out.println("請輸入" + num2 + "到" + num + "之間的數:");
}
}else if(num < num1) {
System.out.println("請輸入"+ num + "到10之間的數:");
//第二次輸入
int num2 = input.nextInt();
//第二次判斷
if(num2 == num1) {
System.out.println("恭喜。");
flag = true;
}
if(num2 > num1) {
System.out.println("請輸入"+ num + "到" + num2 + "之間的數:");
}else if(num2 < num1) {
System.out.println("請輸入" + num2 + "到10之間的數:");
}
}
if(flag == false) {
System.out.println("最後一次機會,請輸入:");
int num4 = input.nextInt();
if(num4 == num1) {
System.out.println("恭喜。");
}else if(num4 > num1) {
System.out.println("你猜大了,三次機會已用完,你是選擇真心話還是大冒險?");
}else {
System.out.println("你猜小了,三次機會已用完,你是選擇真心話還是大冒險?");
}
//電腦產生的隨機是 num1
System.out.println("答案是:" + num1);
}else {
System.out.println("準備開始下一輪。");
}
}
結果:
請指教!!!