Другой ответ здесь:
Ваш код convertBinary
метод не завершен. Он может конвертировать только положительные целые числа. Таким образом, вы должны выбросить Exception
, если пользователь введет 0 или отрицательные целые числа.
public void convertBinary(int num) throws Exception {
if (num < 1) {
throw new Exception("Number out of range (num > 0)");
}
Stack<Integer> stack = new Stack<Integer>();
while (num != 0) {
int d = num % 2;
stack.push(d);
num /= 2;
}
while (!(stack.isEmpty())) {
System.out.print(stack.pop());
}
}
И затем ваш основной метод требуется (Eclipse или другими IDE) для реализации предложения try-catch
.
public static void main(String[] args) {
int decimalNumber = -123;
System.out.println("binary of " + decimalNumber + " is :");
try {
new decTobin().convertBinary(decimalNumber);
} catch (Exception e) {
System.err.println(e.toString());
}
}
Так работает try-catch
предложение.