输出 1到1000的完数
System.out.println("1到1000输出完数:");for(int i=1;i<1000;i++)
{
int s=0;
for(int j=1;j<i/2;j++ )
{
if(i%j==0)
{
s+=j;
}
}
if(s==i)
{
System.out.print(i+"");
}
}
}
}
1到1000输出完数:
24
为什么只输出24,可以告诉哪里错了?
程序代码:
public class Test01 {
public static void main(String args[]) {
int result[] = new int[1000];
int p = 0;
for (int i = 1; i <= 1000; i++) {
int temp = 0;
for (int j = 1; j < i; j++) {
if (i % j == 0)
temp = temp + j;
}
if (temp == i) {
result[p] = i;
p++;
}
}
for (int i = 0; i < p; i++) {
System.out.println(result[i]);
}
}
}
