一个整数加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
分析题目:
1 设这个数为x,int类型,x+100与x+168分别开根号等于t1 t2,t1*t1是否等于x+100 t2*t2等于x+168;是因为是int类型,所以如果开放出现小数会省略不会出现相等的情况,直到出现整数。
2 使用for循环语句,从1开始依次加,然后再用if语句进行判断,然后来一个break,就停止了
3 补充:根号下的函数 sqrt 对应的头函数#include<math.h>;break是循环中结束整个循环的意思。
代码:
//一个整数加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
#include<stdio.h>
#include<math.h>
int main(void)
{
int x, i,t1,t2;
for (i = 1;; i++) // ;与;之间没有东西的原因就是没有限制条件,所以会一直进行循环,然后我们不能让他一直循环下去,所以给了一个break来结束循环
{
t1 = sqrt(i + 100);
t2 = sqrt(i + 168);
if (t1 * t1 == i + 100 && t2 * t2 == i + 168)
break;
}
x = i;
printf("%d", x);
return 0;
}