TCreopargh
书山有路搞为径,学海无涯机作舟。
乱搭的站

(C/C++)完数

问题描述
keyboard_arrow_down

请写一个程序,给出指定整数范围[a,b]内的所有完数,0 < a < b < 10000。一个数如果恰好等于除它本身外的所有因子之和,这个数就称为”完数”。例如6是完数,因为6=1+2+3

输入说明
keyboard_arrow_down

只有一组数据,即一行上的两个整数a和b,a和b之间用空格分隔

输出说明
keyboard_arrow_down

输出[a,b]内的所有完数,每个数字占一行 

输入样例

1 10 
输出样例

6

代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//Powered by TCreopargh
#include<stdio.h>
int main(int argc, char *argv[])
{
    int a,b,i,sum=0;
    scanf("%d%d",&a,&b);
    for(;a<b;a++)
    {
        sum=0;
        for(i=1;i<a;i++)
        {
            if(a%i==0)
                sum+=i;
        }
        if(sum==a)
            printf("%d\n",a);
    }
    return 0;
}
赞赏

发表回复

textsms
account_circle
email

乱搭的站

(C/C++)完数
问题描述 keyboard_arrow_down 请写一个程序,给出指定整数范围[a,b]内的所有完数,0 < a < b < 10000。一个数如果恰好等于除它本身外的所有因…
扫描二维码继续阅读
2018-10-26