![]() ![]() |
|
C趣味程序百例(07)完全数 | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 13:59:21 文章录入:杜斌 责任编辑:杜斌 | |
|
|
如果一个数恰好等于它的因子之和,则称该数为“完全数”。 *题目分析与算法设计 根据完全数的定义,先计算所选取的整数a(a的取值1~1000)的因子,将各因子累加于m,若m等于a,则可确认a为完全数。 *程序说明与注释 #include<stdio.h> void main() { int a,i,m; printf("There are following perfect numbers smaller than 1000:\n"); for(a=1;a<1000;a++) /*循环控制选取1~1000中的各数进行判断*/ { for(m=0,i=1;i<=a/2;i++) /*计算a的因子,并将各因子之和m=a,则a是完全数输出*/ if(!(a%i))m+=i; if(m==a) printf("%4d ",a); } printf("\n"); } *运行结果 TThere are following perfect numbers smaller than 1000: 6 28 496 |
|
![]() ![]() |