社区
C++ 语言
帖子详情
我们学校的程序设计题,完数,高手给个算法
ch_lol
2005-03-20 05:48:22
完数指的是自身等于其各因子(因子包括1,不包括自身)和的自然数
如1*2*3=6,1+2+3=6,所以6是完数。
要求:找出10000内的所有完数,求他们的最大公约数和乘积。
多谢了
...全文
385
10
打赏
收藏
我们学校的程序设计题,完数,高手给个算法
完数指的是自身等于其各因子(因子包括1,不包括自身)和的自然数 如1*2*3=6,1+2+3=6,所以6是完数。 要求:找出10000内的所有完数,求他们的最大公约数和乘积。 多谢了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hermanpc
2005-03-20
打赏
举报
回复
#include <iostream.h>
void main()
{
int i,j;
for(i=1;i<=1000;i++)
{
int sum=0;
for(j=1;j<i;j++)
{
float z=i%j;
if(z==0)
sum=sum+j;
}
if(sum==i)
cout<<i<<'\t';
}
}
feixiaofo
2005-03-20
打赏
举报
回复
求他们的最大公约数和乘积?没看明白是什么意思?只求10000内的完数。
void main()
{
int m,s,i;
for (m=2;m<10000;m++)
{
s=0;
for(i=1;i<m;i++)
{
if((m%i)==0)
s=s+i;
}
if (s==m)
printf("%d\t",m);
}
}
在vc6.0上运行成功。
DiyerYang
2005-03-20
打赏
举报
回复
斗胆问一下把数进行素分解有什么好方法么?
shine51151
2005-03-20
打赏
举报
回复
程序你要需要的话我给你附上
shine51151
2005-03-20
打赏
举报
回复
数论里有个公式:
若正整数 n = p1^a1 * p2^a2 * …… * pk^ak (n的标准分解式)
( 其中 pi 表示 n 的素因子,^是方幂的符号,ai 表示与 pi 对应的方幂, i=1,2,……k )
( 例如: 6 = 2^1 * 3^1 )
则有下列等式成立:
s(n) = (p1^(a1+1)-1)/(p1-1) * (p2^(a2+1)-1)/(p2-1) * …… * (pk^(ak+1)-1)/(pk-1)
(其中s(n)表示n的所有因子之和,包括1也包括n自身)
( 例如:s(6) = (2^(1+1)-1)/(2-1) * (3^(1+1)-1)/(3-1) = 12 )
因此我们可以利用这个等式来设计一个算法:
1、对 [1,10000] 这个闭区间内的正整数n作标准素分解
2、由上面的等式计算出 n 的所有因子和 s(n)
3、表较 s(n) 和 n 的值 if( s(n)== 2*n ) 输出n为完数(2倍的 n 是因为s(n)求和时已经包含了n本身)
4、求 [1,10000] 中所有完数的最大公约数和乘积。
zengwujun
2005-03-20
打赏
举报
回复
超级简单,居然还不自己做。
yuchengliu
2005-03-20
打赏
举报
回复
同意,不然怎么进步!
楚牛9
2005-03-20
打赏
举报
回复
楼主这边的版主好像不太欢迎作业帖。
wuzhihong
2005-03-20
打赏
举报
回复
这个问题好像以前有人问过了。
算法这种东西最好自己多花点时间去想出来,这样才会有提高。
还有告诉楼主这边的版主好像不太欢迎作业帖。
hermanpc
2005-03-20
打赏
举报
回复
哈哈,这道完全数我很久前曾经写过,不过现在忘记了!!哈哈
一个程序员的多年珍藏--收藏
2010 - 01 - 15 [置顶] 一个程序员的多年珍藏(1月23日最新更新) 文章分类:Java编程 程序员珍藏的东西会是什么?呵呵,除了平时写的代码,就是那些百看不厌的电子书了。 昨天很郁闷,我用了5年的移动硬盘,莫名奇妙的坏掉了。里面40G的资料全部报销了。 为了不再重蹈覆辙,我决定把重要的电子书都放到网络硬盘上去备份。索性将这些资料的下载方式公布出来,与大家分享,
GSL 学习指南
http://www.math.org.cn/forums/index.php 论坛地址 SCIbird 博士数学论坛 原创 论坛上朋友们的请求,说说我自己的数分学习经历和心得,以供大家参考. 首先声明:世上没有万能的方法,任何一种方法都有其局限性和适用范围,所以对SCIbird 说的话要辩证的看,取其精华.类似的,如果你在某本书里看到类似"
一个程序员多年的收藏
2010 - 01 - 15 缩略显示 [置顶] 一个程序员的多年珍藏(1月23日最新更新) 文章分类:Java编程 程序员珍藏的东西会是什么?呵呵,除了平时写的代码,就是那些百看不厌的电子书了。 昨天很郁闷,我用了5年的移动硬盘,莫名奇妙的坏掉了。里面40G的资料全部报销了。 为了不再重蹈覆辙,我决定把重要的电子书都放到网络硬盘上去备份。索性将这些资料的下载方式公布
计算机本质
首页发现话
题
提问 登录 加入知乎 为什么计算机能读懂 1 和 0 ? 关注问
题
写回答 计算机 计算机科学 为什么计算机能读懂 1 和 0 ? 从小到大,我们被告知的都是,计
转的一杂谈
网站架构(页面静态化,图片服务器分离,负载均衡)方案全解析 文章分类:综合技术 1、HTML静态化其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的各个门户站点的新闻频道,
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章