关于亲和数
程序代码:
#include <iostream.h> #include <iomanip.h> #include <math.h> int yueshu(int b)//求约数和 { int i=0,a=0,c; for(c=1;c<=b/2;c++) { if(b%c==0) { a+=c; } } return a; } void main() { int a=0,i,j; int y[2000]; for(i=0;i<=2000;i++) { //x[i]=i; y[i]=yueshu(i); } for(i=0;i<=2000;i++) for(j=0;j<=2000;j++) { if(i==y[j]&&j==y[i]&&i!=j) { if(a!=i) cout<<i<<"和"<<j<<"是一对亲和数"<<endl; a=j; } } }请问为何输出的是
220 284
1184 1210
2000 1780 这最后个数据是怎么回事,谢谢