请神指点一下“java的求1000以内的完数”这个程序的问题,怎么修改?
class Example6
{public static void main(String args[])
{int count,i,j;
for(i=1;i<=1000;i++)
{count=1;
for(j=2;j<=i/2;j++)
}
{if(i%j==0)
count=count+j;
}
if(i==count)
System.out.println("i="+i);
}
}
第7行说是非法的表达式开始,这是什么错误呢?
完数6=1+2+3,28=1+2+4+7+14....
参考答案:你的第六行是for(j=2;j<=i/2;j++),然后后面没有任何内容,下面就是“}”了,你程序for循环结构错误!我想那个“}”应该是在for(j=2;j<=i/2;j++)结构的外面:
class Example6
{public static void main(String args[])
{int count,i,j;
for(i=1;i<=1000;i++)
{count=1;
for(j=2;j<=i/2;j++)
{if(i%j==0)
count=count+j;
}
if(i==count)
System.out.println("i="+i);
}
}
}