Source of DoDivision.java


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