标题:[求助]关于完数的
只看楼主
flyaway57
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-3-28
 问题点数:0 回复次数:4 
[求助]关于完数的

#include<stdio.h>
void main()
{int i,k,t=0;
for(i=1;i<=1000;i++)
{for(k=1;k<=i/2;k++)
if (i%k==0)
t=t+k;
if (t==i)
printf("%d是完数",t);
}
}
这是我自己整的,但是没有输出,请各位高手帮忙
#include <iostream.h>

void main()
{
for(int i=1; i<1000; i++){
int sum=0;
for(int j=1; j<=i/2; j++)
if(i%j==0)
sum+=j;
if(sum==i)
cout <<i<<"是完数.\n";
}
}

这个是我在网上下的,我不知道我的和他的区别在那里,但是人家的是对的,也请高手帮忙了
谢谢了啊

搜索更多相关主题的帖子: void include 网上 
2007-03-28 02:30
iwfy
Rank: 1
等 级:新手上路
威 望:2
帖 子:888
专家分:0
注 册:2007-2-23
得分:0 
#include<stdio.h>
main()
{
int i,k;
long t;
for(i=1;i<=1000;i++)
{
t=0;
for(k=1;k<=i/2;k++)
if (i%k==0)
t=t+k;
if (t==i)
printf("%d is\t",t);
}
getch();
return 0;
}

英语不好还想学编程??逆天之路,不由分说!! 数学太差还想学编程??离经叛道,义无返顾!!
2007-03-28 02:41
jiaju111
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2007-3-27
得分:0 
在继续外层循环之前应该把t返回初值0 在printf("%d是完数",t);之后加上t=0; 应该就可以了

#include<stdio.h>
void main()
{int i,k,t=0;
for(i=1;i<=1000;i++)
{for(k=1;k<=i/2;k++)
if (i%k==0)
t=t+k;
if (t==i)
printf("%d是完数",t);t=0;
}
}

Everything is gonna be okay!
2007-03-28 10:05
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
得分:0 
楼上正解

 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-03-28 10:06
flyaway57
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-3-28
得分:0 
谢谢各位了

戒骄戒躁
2007-03-28 11:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-127368-1-1.html




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

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