c语言求解完数!

如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称之为“完数”。例如6的因子是1,2,3,且6=1+2+3,因此6是完数。编写程序找出1000之内的所有完数及... 如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称之为“完数”。例如6的因子是1,2,3,且6=1+2+3,因此6是完数。编写程序找出1000之内的所有完数及这些完数的和。
实验步骤与要求:
(1) 要求使用for循环
(2) 输出形式为:完数1+完数2...=和值

#include<stdio.h>
int main()
{
int i,j,sum=0;
for(i=2;i<1000;i++)
{
for(j=1;j<i;j++)
{
if(i%j==0) sum=sum+j;
}
if(sum==i) printf("%d 是完数",i);
sum=0;
}
return 0;
}
我怎么弄都弄不出完数的和。求高手帮我看看,要怎么改好!!!
展开
 我来答
匿名用户
推荐于2016-08-03
展开全部
#include<stdio.h>
int main()
{
int i,j,sum=0;
int count=0;//计算完数的和
for(i=2;i<1000;i++)
{
for(j=1;j<i;j++)
{
if(i%j==0) sum=sum+j;
}
if(sum==i)
{
printf("%d 是完数\n",i);
count+=i;
}
sum=0;
}

printf("完数和为: %d\n",count);
return 0;
}
追问
那sum的作用是什么?我本来是想用来求和的
追答
sum的作用是求当前判断的数的各个因子的和,例如6的因子是1,2,3,sum是取得1+2+3
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
yuansen1012
2012-05-12
知道答主
回答量:3
采纳率:100%
帮助的人:4088
展开全部
#include<stdio.h>
#include<stdlib.h>
#define N 1000
void main()
{
int num,f[20],i,j,sum,t;
unsigned short flag;
/*Out Recycle*/
for(num = 2;num<N;num++)
{
sum=0;
j= 0;

/*Inner Recycle*/
for(i=1;i<=num/2;i++)
{
if(num%i==0)
{
f[j]=i;
sum+=f[j];
j++;
}
}

/*justify it is a perfect num*/
t=j-1;
if(sum==num)
{
printf("%d its factors are",num);
for(j=0;j<=t;j++)
printf("%d,",f[j]);
printf("\n");
}

/* enter next column*/
}
system("pause");
}

参考资料: me 不用参考资料

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式