找出一千以内的所以完数,例如6的因子为1 2 3 而6=1+2+3 因此6是完数 c++

2025-05-09 15:50:21
推荐回答(2个)
回答1:

int main()

{   

 int x=2;         int sum=0;         int a;  

 while(x<=1000) 

 {  

  sum=0;

  a=1;

  while(a<=x/2)        

  {           

   if(x%a==0)sum=sum+a;             

   a++;                

  }

  if(sum==x)

  cout<
  x++;      

 }  

 return 0; 

}

回答2:

while(a <= x / 2){
sum += x % a == 0 ? a : 0;

a++;

}