第五章9

描述

 

一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1,2,3,且6=1+2+3,因此6是完数。

输入

 

一个正整数n

输出

判断n是否为完数。如果是,则输出Yes和它的所有因子;否则,输出No

 

 

【样例输入】

28

【样例输出】

Yes,its factors are 1 2 4 7 14

 

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,i,j,tot=0;
    scanf("%d",&n);

    for(i=1;i<n;i++){
        if(n%i==0)

        tot+=i;
    }
    if(tot==n){
            printf("Yes,its factors are");
        for(i=1;i<n;i++){
            if(n%i==0)
                printf(" %d",i);
        }
    }
    else
        printf("No");
    //if(tot==n)
    return 0;
}

 

posted @ 2022-10-26 17:00  aquAAA  阅读(61)  评论(0编辑  收藏  举报