
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class DivisionDemoFirstVersion
{

    public static void main(String[] args) throws IOException
    {
        try
        {
            BufferedReader keyboard = new BufferedReader(
                         new InputStreamReader(System.in));

            System.out.println("Enter numerator:"); 
            String numeratorString = keyboard.readLine( );
            int numerator = Integer.parseInt(numeratorString);
            System.out.println("Enter denominator:"); 
            String denominatorString = keyboard.readLine( );
            int denominator = 
                         Integer.parseInt(denominatorString);

            if (denominator == 0)
                throw new DivisionByZeroException( );

            double quotient = numerator/(double)denominator;
            System.out.println(numerator + "/" 
                                 + denominator 
                                 + " = " + quotient);
        }
        catch(DivisionByZeroException e)
        {
            System.out.println(e.getMessage( ));
            secondChance( );
        }

        System.out.println("End of program.");
    }

    public static void secondChance( ) throws IOException
    {
        BufferedReader keyboard = new BufferedReader(
                         new InputStreamReader(System.in));

        System.out.println("Try again:");
        System.out.println("Enter numerator:"); 
        String numeratorString = keyboard.readLine( );
        int numerator = Integer.parseInt(numeratorString);
        System.out.println("Enter denominator:"); 
        System.out.println("Be sure the denominator is not zero.");
        String denominatorString = keyboard.readLine( );
        int denominator = Integer.parseInt(denominatorString);

        if (denominator == 0)
        {
            System.out.println("I cannot do division by zero.");
            System.out.println("Aborting program.");
            System.exit(0);
        }

        double quotient = ((double)numerator)/denominator;
        System.out.println(numerator + "/" 
                                     + denominator 
                                     + " = " + quotient);
    }

}
