標題:
【057】例外處理 (三)
[打印本頁]
作者:
tonyh
時間:
2023-4-15 14:45
標題:
【057】例外處理 (三)
本帖最後由 tonyh 於 2023-4-19 16:05 編輯
對
猜數字遊戲
的程式碼,進行例外處理,
使程式執行時,萬一使用者不小心輸入錯誤,遊戲得以繼續進行。
原執行狀況:
進行例外處理後:
import java.util.Scanner;
public class Ch50
{
public static void main(String args[])
{
int a=1,b=99,n=0;
int ans=(int)(Math.random()*99+1); //1~99
int guess;
while(true)
{
try
{
Scanner s=new Scanner(System.in);
n++;
System.out.print("猜一個"+a+"~"+b+"之間的數字: ");
guess=s.nextInt();
if(guess>ans)
{
System.out.println("猜太大了!");
b=guess-1;
}else if(guess<ans)
{
System.out.println("猜太小了!");
a=guess+1;
}else
{
System.out.println("恭喜你猜對了!");
System.out.println("總共猜了"+n+"次!");
break;
}
}catch(Exception e)
{
System.out.println("輸入錯誤!請輸入整數!");
}
}
}
}
複製代碼
作者:
王捷恩
時間:
2023-4-19 16:19
import java.util.Scanner;
public class A {
public static void main(String[] args) {
int a=1,b=99,n=0;
int ans=(int)(Math.random()*99+1); //1~99
int guess;
while(true)
{
try
{
Scanner s=new Scanner(System.in);
n++;
System.out.print("猜一個"+a+"~"+b+"之間的數字: ");
guess=s.nextInt();
if(guess>ans)
{
System.out.println("猜太大了!");
b=guess-1;
}else if(guess<ans)
{
System.out.println("猜太小了!");
a=guess+1;
}else
{
System.out.println("恭喜你猜對了!");
System.out.println("總共猜了"+n+"次!");
break;
}
}catch(Exception e)
{
System.out.println("輸入錯誤!請輸入整數!");
}
}
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2