| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 650 人关注过本帖
标题:[求助]请大家帮忙一下!
只看楼主 加入收藏
mjt
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-5-11
收藏
 问题点数:0 回复次数:2 
[求助]请大家帮忙一下!
题目:
       一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、3,而
6=1+2+3,因此6是“完数”。编程序找出1000之内的所有完数,并按下面格式输出其因子:
      6,its factors are 1,2,3
搜索更多相关主题的帖子: factors 
2005-05-14 23:55
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
这个做过N次,自己想想先。
2005-05-15 01:09
kangkai
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2005-9-6
收藏
得分:0 
对n进行分解因数,应先找到一个最小的质数i,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束
(2)如果n>i,但n能被i整除,则应用数组存储i的值,
(3)用i+1作为i的值,重复执行第一步。
......
int j=0;
for(int i=1;i<n;i++)
{
   if( n%i==0)
   {
        a[j]=i;i++;
        j++;
    }
    i++;
}
int sum=0;
for(i=j-1;i>=0;i++)
    sum+=a[i];
if(n==sum)
    cout<<n<<" is a wanshu";
else
    cout<<n<<"is not a wanshu";
.....
2005-09-17 21:00
快速回复:[求助]请大家帮忙一下!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016841 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved