本帖最後由 tonyh 於 2014-9-13 14:44 編輯
利用 try...catch 語法捕捉例外, 針對不同的例外做出不同的回應, 並只允許使用者至多三次的錯誤嘗試.
- import java.util.Scanner;
- public class ch47
- {
- public static void main(String args[])
- {
- for(int i=1; i<=3; i++)
- {
- try
- {
- int a, b;
- Scanner s=new Scanner(System.in);
- System.out.print("請輸入分子: ");
- a=s.nextInt();
- System.out.print("請輸入分母: ");
- b=s.nextInt();
- System.out.println(a+"/"+b+"="+(a/b)+"\n");
- return;
- }
- catch(java.lang.ArithmeticException e)
- {
- System.out.println("運算錯誤! 分母不可為零!\n");
- }
- catch(java.util.InputMismatchException e)
- {
- System.out.println("格式錯誤! 輸入需為整數!\n");
- }
- if(i==3)
- System.out.println("錯誤嘗試過多! 程式跳出!\n");
- }
- }
- }
複製代碼 |