当前位置: 代码迷 >> C语言 >> 请兄弟们修改一个语言
  详细解决方案

请兄弟们修改一个语言

热度:116   发布时间:2006-03-07 22:24:00.0
请兄弟们修改一个语言
这个是求完数的!
课本上的,大家应该都知道吧
谭浩强教授的课本
#include<math.h>
main()
{
int i,,j,m,s,t;
for(t=2;t<=1000;t++)
{
m=sqrt(t);
for(i=2,s=1;i<=m;i++)
{
if(t%i==0) s=s+i;
}
if(s%t==0)
{
printf("%d its factors are 1",t);
for(j=2;j<=m;j++)
{
if(t%j==2) printf(",%d",j);
}
}
printf("\n");
}
}
还是说说题目吧:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如,6的因子为1,2,3,而6=1+2+3,因此6就是完数.编程找出其1000之内所有的完数,并按下面的格式输出:
6 its factors are 1,2,3
搜索更多相关的解决方案: 兄弟  语言  

----------------解决方案--------------------------------------------------------

有问题~~


----------------解决方案--------------------------------------------------------

#include "stdio.h"
#include "conio.h"
void main()
{
int k[10];
int i,j,n,s;

for(j=2;j<1000;j++)
{
n=-1;
s=j;
for(i=1;i<j;i++)
{
if((j%i)==0)
{
n++;
s=s-i;
k[n]=i;
}
}
if(s==0)
{
printf("%d its factors are ",j);
for(i=0;i<=n;i++)
printf("%4d",k[i]);
printf("\n");

}
}
getch();
}


----------------解决方案--------------------------------------------------------

win-tc教程上有这样的,稍微做了下修改,借花献佛


----------------解决方案--------------------------------------------------------

楼上是呆头鹅,哈哈哈


----------------解决方案--------------------------------------------------------
吓我一跳,修改语言
----------------解决方案--------------------------------------------------------
我将楼主的程序修改了一下,结果是6、28、496,应该正确吧。
#include<math.h>
main()
{
int i,j,s,t;
for(t=2;t<=1000;t++)
{
for(i=2,s=1;i<t;i++)
{
if(t%i==0) s=s+i;
}
if(s==t)
{
printf("%d its factors are 1",t);
for(j=2;j<t;j++)
{
if(t%j==0)
printf(",%d",j);
}
printf("\n");
}
}
getch();
}

----------------解决方案--------------------------------------------------------
同意上楼的
----------------解决方案--------------------------------------------------------

#include<conio.h>
main()
{
int i,j,s,t;
for(t=2;t<=1000;t++)
{
s=0;
for(i=1;i<t;i++)
{

if(t%i==0)
s=s+i;
}
if(s==t)
{
printf("%d its factors are",t);
for(j=1;j<t;j++)
{
if(t%j==0)
printf(",%d",j);
}
printf("\n");
}
}
getch();
}


----------------解决方案--------------------------------------------------------
多谢了,兄弟姐妹们,我运行通过
----------------解决方案--------------------------------------------------------
  相关解决方案