0

此方法采用 int - 但是我不断收到错误消息,有人知道为什么吗?

 //finds the factors of a number that was entered
public void findFactors(int t)
{
    System.out.println("factors of " +t+ " are:");

    for(int i =0; i<t+1; i++)
    {
        if(t%i == 0)
        {
            System.out.println(i);
        }
    }
}
4

1 回答 1

0

问题是当 i 为 0 时 t%i 未定义,因为您不能除以零也不能找到余数。

与其从 0 开始循环,不如从 1 开始。

改变

for(int i =0; i<t+1; i++)

for(int i =1; i<t+1; i++)

(您也可以考虑从 2 开始测试,因为 1 将是所有整数的一个因素)

于 2013-03-19T13:11:10.437 回答