C++编程第19题_C/C++_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > C/C++ > C++编程第19题

C++编程第19题

 2013/5/19 14:48:07  流浪的红舞鞋  程序员俱乐部  我要评论(0)
  • 摘要://一个数如果恰好等于它的因子之和,这个数就称为“完数”。//例如6=1+2+3.编程找出1000以内的所有完数。//注意是所有因子,而非质因子#include<iostream>usingnamespacestd;intmain(){intn,tran,t;staticintcount[10];//该数组用来保存质因子,因为10个2相乘为1024,所以定义数组大小为10for(n=2;n<1000;n++){t=-1;tran=n;for(inti=1;i<n;i++
  • 标签:c++ 编程
//一个数如果恰好等于它的因子之和,这个数就称为“完数”。
//例如6=1+2+3.编程找出1000以内的所有完数。
//注意是所有因子,而非质因子

#include <iostream>

using namespace std;

int main()
{
    int n,tran,t;
    static int count[10];
    //该数组用来保存质因子,因为10个2相乘为1024,所以定义数组大小为10
    for(n=2;n<1000;n++){
        t=-1;
        tran=n;
        for(int i=1;i<n;i++){
                if(n%i==0){
                    t++;
                    count[t] = i;//把i保存到数组
                    tran = tran-i;
                }
        }
        if(tran==0){
            cout<<n<<"是一个完数"<<endl;
            cout<<"质因子为 : ";
            for(int j=0;j<t;j++){
                cout<<count[j]<<",";
            }
            cout<<count[t]<<endl;
        }

    }
    return 0;
}
运行结果为:
  • class='magplus' title='点击查看原始大小图片' />
  • 大小: 42.4 KB
  • 查看图片附件
上一篇: 明解C语言 下一篇: C++编程第18题
发表评论
用户名: 匿名