Почему в методе division() не требуется делать проверку на то, что делитель b != 0? Нам еще рано об этом думать? И ваше решение public static double division(int a, int b) { return (a * 1.0) / b; } и моё public static double division(int a, int b) { return (double) a / b; } не несут в себе проверки деления на ноль. Решение проходит валидацию. Но разве это по-нашему, по-программистски? )