题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
分析:设此整数为x,加上100后的完全平方数的平方根为n,再加上168后的完全平方数的平方根为m。则:
①[latex]a + 100 = n^2[/latex]
②[latex]a + 100 + 168 = m^2[/latex]
由①、②可得[latex]m^2 – n^2 = 168 [/latex]
因为m和n都大于0,所以m小于168。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <stdio.h> #include <math.h> int main() { int x, m[168], i; float n[168]; for(i=0; i<168; i++) { m[i] = i; n[i] = sqrt(pow(m[i], 2) - 168); if(fabs(n[i] - (int)n[i]) < 1e-8) { x = pow(n[i], 2) - 100; printf("%d\n", x); } } } |