完数的计算方法与循环的结合

img


完数如何用计算出来,通过循环如何表达?完数的表达式是什么样的?

#include <stdio.h>

int main()
{
    int nums[1001];
    for(int i = 1;i <= 1000;i++){
        int sum = 0;
        int count = 0;
        for(int j = 1;j < i;j++){
            if(i % j == 0){
                nums[count++] = j;
                sum += j;
            }
        }
        if(sum == i){
            printf("%d=",i);
            for(int j = 0;j < count - 1;j++){
                printf("%d+",nums[j]);
            }
            printf("%d\n",nums[count - 1]);
        }
    } 
    return 0;
}