int sum(int x)
{
int sum=0;
for(int i=1; i<=x/2; i++)
{
if(x%i == 0)
{
sum += i;
}
}
return sum;
}
循环判断条件是 <=x/2 而不是 <x, 因为比x/2大的数是成不了因子的。
其它情况(数比较大,包不包括1和自身)只需要改动一下即可。
int sum(int x)
{
int sum=0;
for(int i=1; i<=x/2; i++)
{
if(x%i == 0)
{
sum += i;
}
}
return sum;
}
循环判断条件是 <=x/2 而不是 <x, 因为比x/2大的数是成不了因子的。
其它情况(数比较大,包不包括1和自身)只需要改动一下即可。