一道练习题,一个整数a,a加上100后是一个完全平方数,a加上168又是一个完全平方数,请问该数是多少?
#include<stdio.h>
#include<math.h>
int main(void)
{
int n = 0;
while (1)
{
float k = sqrt(n + 100);
float p = sqrt(n + 168);
/这里判断a是否为整数来判断n是否为完/
if(k == (int)k && p == (int)p)
/判断方法:利用int强制转换截去小数再与原来的浮点数比较判断,不过这不完全正确,因为浮点数精度有限,如果浮点数过小,则会造成误判/
{
break;
}
n++;
}
printf("%d", n);
return 0;
}
欢迎留言,如果代码有错或有更好的方法,欢迎在评论区打出或私信我,感谢