//第五章习题第四道 //By Jun #include <stdio.h> int main() { int i, j, sum1, sum2; sum1 = sum2 = 0; //sum1表示伪亲密数,sum2表示伪亲密数的因子和 for (i = 2; i <= 1000; i++) { for (sum1 = 0, j = 2; j < i; j++)//求这个数的伪亲密数 { if (i % j == 0) { sum1 = sum1 + j; } } for (sum2 = 0, j = 2; j < sum1; j++)//求得伪亲密数,求其因子和 { if (sum1 % j == 0) { sum2 = sum2 + j; } } if (sum2 == i && sum1 != i)//判断伪亲密数是否是真亲密数 { printf("%d~%d\n", i, j); } } return 0; } |
Double click to view unformatted code.