一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
public class Wan{
public static void main(String[] args) {
int n = 1000;
compNumber(n);
}
// 求完数
private static void compNumber(int n) {
System.out.println(n + "以内的完数:");
for (int i = 1; i <=n; i++)
{
int sum = 0;
for (int j = 1; j < i; j++)
{
if ((i % j) == 0)
{
sum =sum+ j;
if (sum == i)
{
System.out.print(i + " ");
}
}
}
}
}
}
运行结果
1000以内的完数:
6 24 28 496