如何使用“for”循环找到 28 之后的前 3 个完美数字?这是我正在使用的一些代码。
我似乎无法得到超过 2 个数字的任何东西。如果我尝试增加 i<= 2000000000 它告诉我整数太大。
public class JBaneling
{
public static void main(String args[])
{
System.out.println("3 nearest Perfect numbers after 29 ");
for (int i = 29; i <= 2000000000; i++) {
test1(i);
}
}
public static void test1(int number)
{
int sum = 0;
for(int divisor=1; divisor < number; divisor++)
{
if ((number % divisor) ==0)
{
sum = sum + divisor;
}
}
if(sum==number)
{
System.out.println(number + " is a perfect number");
}
}
}