编程找出1000以内的所有完数

简介: 编程找出1000以内的所有完数。

一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

include

define N 1000

int main()
{
int i,j,k,n,sum;
int a[256];
for(i=2;i<=N;i++)
{
sum=a[0]=1;
k=0;
for(j=2;j<=(i/2);j++)
{
if(i%j==0)
{
sum+=j;
a[++k]=j;
}

    }
    if(i==sum)
    {
        printf("%d=%d",i,a[0]);
        for(n=1;n<=k;n++)
            printf("+%d",a[n]);
        printf("\n");
    }

}
return 0;

}

以上实例输出结果为:

6=1+2+3
28=1+2+4+7+14
496=1+2+4+8+16+31+62+124+2

相关文章
|
10月前
|
人工智能 BI C语言
【C语言】求两个数的最大公约数和最小公倍数(极简代码版)
【C语言】求两个数的最大公约数和最小公倍数(极简代码版)
92 1
|
10月前
|
C语言
C语言之完数、素数、回文数合集
C语言之完数、素数、回文数合集
|
10月前
|
算法 C语言
如何用C语言轻松判断回文数?
如何用C语言轻松判断回文数?
|
10月前
|
C语言
c语言编程练习题:7-45 找完数
c语言编程练习题:7-45 找完数
79 0
|
10月前
|
C语言
c语言编程练习题:7-41 计算阶乘和
c语言编程练习题:7-41 计算阶乘和
161 0
|
9月前
|
存储 安全 C语言
【C语言刷题每日一题】——求最大公约数(带数学计算过程详解)
【C语言刷题每日一题】——求最大公约数(带数学计算过程详解)
|
10月前
|
C语言
c语言编程练习题:7-42 整除光棍
c语言编程练习题:7-42 整除光棍
80 0
|
C语言
C语言中n的阶乘的两种思路
C语言中n的阶乘的两种思路
|
人工智能 BI
循环结构 编程例题
循环结构 编程例题
105 0
Python编程求1000内所有完数(详解版)
Python编程求1000内所有完数(详解版)