尋找n以內的親密數對。如果a的所有正因子和等于b,b的所有正因子和等于a,因子包括1但不包括本身,且a不等于b,則稱a,b為親密數對。
為什么把for回圈改成while回圈就不對了呢?親密數對問題
#include <stdio.h>
int factorsum(int x){
int a=1,sum=0;
while(a<x)
{ if(x%a==0)
sum=sum+a;
a++;
}
return sum;
}
int main(){
int n,i=1,j,m;
scanf("%d",&n);
while(i<=n) {
m=factorsum(i);
for(j=i+1;j<=n;j++)
{
if(factorsum(j)==i&&m==j){
printf("%d<-->%d\n",i,j);}
}
i++;
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/274564.html
標籤:C語言
上一篇:非對稱的鏡像處理
