我正在尝试查找输入数字的倍数,但是每次用户输入0时都会出现此错误。

Exception in thread "main" java.lang.ArithmeticException: / by zero


是的,我知道您不能除以零,但是必须有一种方法可以使这项工作成功。

假设即使输入了零,它仍然可以工作。

 public static int prob1Rec(int num1, int num2) {

        int sum = 0;
        for (int i = 1; i < 500; i++) {
            if ((i % num1 == 0) || (i % num2 == 0)) {
                sum += i;
            }
        }
        return sum;
    }


注意:如果一个数字为零,我仍然想将另一个数字的倍数相加。

最佳答案

您可以将if更改为

if ((num1 != 0 && i % num1 == 0) || (num2 != 0 && i % num2 == 0)) {

09-04 19:21
查看更多