本帖最後由 tonyh 於 2012-9-22 17:06 編輯
改良上一個程式碼, 讓使用者重覆猜測時, 範圍能越縮越小,
譬如一開始顯示"猜一個1~99間的數字", 當使用者猜56後, 訊息能變成"猜一個1~56間的數字",
當使用者再猜22後, 訊息又會變成"猜一個22~56間的數字".- import java.io.Console;
- public class ch29
- {
- public static void main(String args[])
- {
- Console console=System.console();
- String str;
- int a=1, b=99;
- int ans=38;
- int guess;
- while(true)
- {
- System.out.print("猜一個"+a+"~"+b+"之間的數字: ");
- guess=Integer.parseInt(console.readLine());
- a=(guess<ans)?guess:a;
- b=(guess>ans)?guess:b;
- if(guess!=ans)
- {
- str=(guess>ans)?"猜得太大了":"猜得太小了";
- System.out.println(str);
- continue;
- }
- break;
- }
- System.out.println("恭喜你猜對了!");
- }
- }
複製代碼 |