| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 781 人关注过本帖
标题:求出1000以内所有盈数?有谁会吗?
只看楼主 加入收藏
daiyuancan
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-6-9
收藏
 问题点数:0 回复次数:7 
求出1000以内所有盈数?有谁会吗?

不要给以下答案,因为是错的。

printf("\n\n1000以内的盈数有:\n");
for (i=2;i<=1000;i++)
{
int sum=0;
for (j=2;j<=500;j++)
{
if (i%j==0)
{
sum+=j;
}
if (i>sum)
{
printf("%d ",i);
break;
}
}
}

输出为:2,3,4,5,6,.......10000,谁知道哪有问题???

2006-06-09 22:57
fresher
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-5-24
收藏
得分:0 
盈数 是是东西啊
2006-06-10 12:31
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 
盈数与完数是相对应的。
一个数如果恰好等于它的各个因子(该数本身除外)之和,则称其为完数;
反之,如果因子之和大于该数,则称其为盈数。

对不礼貌的女生收钱......
2006-06-10 15:15
q12qwe
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-5-23
收藏
得分:0 

#include "stdio.h"
main()
{
int i,j,sum=0;
for(i=2;i<=1000;i++)

{
for(j=1;j<i;j++)
if(i%j==0)
sum=sum+j;


if(sum>i)
printf("%5d",i);

sum=0;

}

}
可以不 ..?

[此贴子已经被作者于2006-6-11 12:29:31编辑过]

2006-06-11 12:28
soft_wind
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:1430
专家分:0
注 册:2006-4-5
收藏
得分:0 

恩,是对的。


对不礼貌的女生收钱......
2006-06-11 12:41
q12qwe
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-5-23
收藏
得分:0 

俺继续努力....
2006-06-11 13:26
yiqing8854
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
呵呵4 楼正确,但是你的程序TC++3.0通不过,知道为什么吗? 因为最后缺一个return 自己试试吧

2006-06-11 16:04
q12qwe
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-5-23
收藏
得分:0 

...谢谢
我只装了个Turbo c for windows 集成实验与学习环境6.0
return?
不知道具体用法..我查下

2006-06-11 17:35
快速回复:求出1000以内所有盈数?有谁会吗?
数据加载中...
 
   



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

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