返回列表 發帖

[回家作業] 猜數字修正版

修正上課所提到BUG
假設一開始範圍是0-100
當輸入50 如果太小  範圍會是 50-100
但這時候如果輸入20
那各位的程式會從20-100
也就是說 自己所輸入的數值如果 大於 或是小於 範圍數值的話
就會產生BUG出現

請各位修正這個錯誤
  1. package tw.mis.kuas.edu.tw;

  2. import java.util.Scanner;

  3. public class Msin {

  4.         public static void main(String[] args) {
  5.                 // TODO 自動產生的方法 Stub
  6.                 int max =99;
  7.                 int min = 0;
  8.                 int yournum = 0;
  9.                 int count = 0;
  10.                 int random_num = (int)(Math.random()*100+1);
  11.                 Scanner scanner = new Scanner(System.in);
  12.                
  13.                 while(true)
  14.                 {
  15.                         count++;
  16.                         System.out.print("Please input a number: ");
  17.                         yournum  = scanner.nextInt();
  18.                        
  19.                         if(!(yournum<max && yournum>min))
  20.                         {
  21.                                 System.out.println("Error 請輸入數值範圍內的數");
  22.                                 continue;
  23.                         }
  24.                        
  25.                         if(yournum==random_num)
  26.                         {
  27.                                 System.out.println("You win");
  28.                                 System.out.println("共猜了"+count+"次");
  29.                         }
  30.                         else if(yournum<random_num)
  31.                         {
  32.                                   System.out.println("Too Short");
  33.                       System.out.println(yournum + "~" + max);
  34.                       System.out.println("****************");
  35.                       min = yournum;
  36.                         }
  37.                         else if(yournum>random_num)
  38.                         {
  39.                                    System.out.println("Too Big");
  40.                        System.out.println( min + "~" + yournum);
  41.                        System.out.println("****************");
  42.                        max = yournum;
  43.                         }
  44.                 }
  45.                
  46.         }

  47. }
複製代碼

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

此帖僅作者可見

TOP

返回列表