一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1,2,3,且6=1+2+3,因此6是完数。
输入
一个正整数n
输出
判断n是否为完数。如果是,则输出Yes和它的所有因子;否则,输出No
一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1,2,3,且6=1+2+3,因此6是完数。
输入
一个正整数n
输出
判断n是否为完数。如果是,则输出Yes和它的所有因子;否则,输出No
#include<stdio.h>
using namespace std;
int main() {
int n,s=0;
scanf("%d",&n);
for(int i=1; i<n; i++)
if(n%i==0) s+=i;
if(s==n) {
for(int i=1; i<n; i++)
if(n%i==0) printf("%d ",i);
}else printf("no");
return 0;
}
觉得有用的话采纳一下哈