程序是否有问题,求6~5000内的亲密数对
#include<stdio.h>main(){inta,b,h,s,sum1,sum2;while(6<=a&&a<=5000,6<=b&&b<=5000){while...
#include<stdio.h>
main()
{
int a,b,h,s,sum1,sum2;
while(6<=a&&a<=5000,6<=b&&b<=5000)
{
while(0<h&&h<a)
{
a%h==0?sum1=h+sum1:h++;
}
while(0<s&&s<b)
{
b%s==0?sum2=s+sum2:s++;
}
a++;b++;
if (sum1==b&&sum2==a)
printf("%d、%d是一对亲密数",a,b);
}
} 展开
main()
{
int a,b,h,s,sum1,sum2;
while(6<=a&&a<=5000,6<=b&&b<=5000)
{
while(0<h&&h<a)
{
a%h==0?sum1=h+sum1:h++;
}
while(0<s&&s<b)
{
b%s==0?sum2=s+sum2:s++;
}
a++;b++;
if (sum1==b&&sum2==a)
printf("%d、%d是一对亲密数",a,b);
}
} 展开
展开全部
//电脑速度慢的话,请将5000改为1000。
#include<stdio.h>
void main()
{
int getsum(int n);
int x,y;
for(x=6;x<5000;x++)//电脑速度慢的话,请将5000改为1000。
for(y=6;y<5000;y++)//电脑速度慢的话,请将5000改为1000。
if((x==getsum(y))&&(y==getsum(x))&&x!=y)
printf("%-5d%-5d%\n",x,y);
}
int getsum(int n)
{
int i,a=1;
for(i=2;i<=n/2;i++)
if(!(n%i))
a=a+i;
return a;
}
#include<stdio.h>
void main()
{
int getsum(int n);
int x,y;
for(x=6;x<5000;x++)//电脑速度慢的话,请将5000改为1000。
for(y=6;y<5000;y++)//电脑速度慢的话,请将5000改为1000。
if((x==getsum(y))&&(y==getsum(x))&&x!=y)
printf("%-5d%-5d%\n",x,y);
}
int getsum(int n)
{
int i,a=1;
for(i=2;i<=n/2;i++)
if(!(n%i))
a=a+i;
return a;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询