第十周项目5-输出完数

一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3,再如8的因子和是7(即1+2+4),8不是完数。编程找出1000以内的所有完数。

<span style="font-size:14px;">/*
 *Copyright (c) 2014,烟台大学计算机学院
 *All gight reserved.
 *文件名称:temp.cpp
 *作者:邵帅
 *完成时间:2014年11月2日
 *版本号:v1.0
*/
#include <iostream>
using namespace std;
int main( )
{
    int i,m,n;
    cout<<"2-1000之间的完数有:";
    for(i=2; i<=1000; i++)
    {
        m=1;
        for(n=2; n<=i/2; n++)
            if(i%n==0)
               m+=n;
            if(i==m)
               cout<<i<<"  ";
    }
    cout<<endl;
    return 0;
}</span>

运行结果:



心得:求完数,首先从2到1000构造循环控制变量为i的外层循环。每次循环中,利用内嵌的循环逐个地求出i的因子,并累加起来。

@ Mayuko

posted @ 2014-11-02 15:30  麻麻麻麻鱼鱼  阅读(135)  评论(0编辑  收藏  举报