Source of DoDivision.java


  1: //DoDivision.java
  2: 
  3: import java.util.Scanner;
  4: 
  5: public class DoDivision
  6: {
  7:     private int numerator;
  8:     private int denominator;
  9:     private double quotient;
 10: 
 11:     public static void main(String[] args)
 12:     {
 13:         DoDivision doIt = new DoDivision();
 14: 
 15:         try
 16:         {
 17:             doIt.doNormalCase();
 18:         }
 19:         catch (DivideByZeroException e)
 20:         {
 21:             System.out.println(e.getMessage());
 22:             doIt.giveSecondChance();
 23:         }
 24: 
 25:         System.out.println("End of Program.");
 26:     }
 27: 
 28:     public void doNormalCase()
 29:         throws DivideByZeroException
 30:     {
 31:         System.out.println("Enter numerator:");
 32:         Scanner keyboard = new Scanner(System.in);
 33:         numerator = keyboard.nextInt();
 34: 
 35:         System.out.println("Enter denominator:");
 36:         denominator = keyboard.nextInt();
 37:         if (denominator == 0)
 38:             throw new DivideByZeroException();
 39:         quotient = numerator / (double)denominator;
 40:         System.out.println(numerator + "/" + denominator + " = " + quotient);
 41:     }
 42: 
 43:     public void giveSecondChance()
 44:     {
 45:         System.out.println("Try Again:");
 46:         System.out.println("Enter numerator:");
 47:         Scanner keyboard = new Scanner(System.in);
 48: 
 49:         numerator = keyboard.nextInt();
 50:         System.out.println("Enter denominator:");
 51:         System.out.println("Be sure the denominator is not zero.");
 52:         denominator = keyboard.nextInt();
 53: 
 54:         if (denominator == 0)
 55:         {
 56:             System.out.println("I cannot do division by zero.");
 57:             System.out.println("Since I cannot do what you want,");
 58:             System.out.println("the program will now end.");
 59:             System.exit(0);
 60:         }
 61: 
 62:         quotient = ((double)numerator) / denominator;
 63:         System.out.println(numerator + "/" + denominator + " = " + quotient);
 64:     }
 65: }