package jp.co.jid.exceptionSample;

import java.util.ArrayList;

public class Exercises01 {

	public static void main(String[] args) {
		ArrayList<String> inputStrs = InputUtil.input();
		String str1 = inputStrs.get(0);
		String str2 = inputStrs.get(1);
		try {
			System.out.println(str1 + "÷" + str2 + "の除算結果は" + div(str1, str2));
		} catch (NumberFormatException e) {
			System.out.println("数字ではありません");
		} catch (NullPointerException e) {
			System.out.println("値が指定されていません");
		} catch (ArithmeticException e) {
			System.out.println("∞");
		}
	}

	private static double div(String str1, String str2) throws NumberFormatException, ArithmeticException {
		if (str1 == null && str2 == null) {
			throw new NullPointerException();
		}
		double num1 = (str1 == null ? 0.0 : Double.valueOf(str1));
		double num2 = (str2 == null ? 0.0 : Double.valueOf(str2));
		if (num2 == 0) {
			throw new ArithmeticException();
		}
		return num1 / num2;
	}
}
