思路:

设该数为x,根据题意可得:

① x + 100 = n²

② x + 168 = m²

其中n和m均为正整数。

将①式代入②式,得:

n² + 68 = m²

移项,得:

(m + n)(m - n) = 68

由于68的因数有1、2、4、17、34、68,因此可以列出以下六组方程:

m + n = 68,m - n = 1,解得m = 35,n = 33,即x = n² - 100 = 89

m + n = 34,m - n = 2,解得m = 18,n = 16,即x = n² - 100 = 156

m + n = 17,m - n = 4,解得m = 10,n = 7,即x = n² - 100 = -51(舍去)

m + n = 68,m - n = 2,解得m = 35,n = 33,即x = n² - 100 = 89

m + n = 34,m - n = 4,解得m = 19,n = 15,即x = n² - 100 = 125

m + n = 17,m - n = 17,解得m = 17,n = 0,即x = n² - 100 = -100(舍去)

综上所述,该数为89或156。

代码实现:

#include <stdio.h>

int main() { int x, n, m;

for (x = 1; x <= 10000; x++) // 找出符合条件的x
{
    n = (int)sqrt(x + 100);
    if (n * n == x + 100) // 判断x + 100是否为完全平方数
    {
        m = (int)sqrt(x + 168);
        if (m * m == x + 168) // 判断x + 168是否为完全平方数
        {
            printf("%d\n", x);
        }
    }
}

return 0;

}

C语言编写题目一个整数它加上100是一个完全平方数或者加上168也是一个完全平方数请问该数是多少

原文地址: https://www.cveoy.top/t/topic/b5Dk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录