程序是否有问题,求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);
}
}
展开
 我来答
己学好4
2015-04-01 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:5160万
展开全部
//电脑速度慢的话,请将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;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式