循环求解完全平方整数(高教社,《Python编程基础及应用》习题6-9) 分数 2 作者 海洋饼干叔叔 单位 重庆大学 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? from math import sqrt x=0 while True: a=x+100 b=x+268 a=sqrt(a) b=sqrt(b) if : print(x) break x+=1
时间: 2024-01-03 13:03:14 浏览: 518
下面是对应的 Python 代码实现:
```python
from math import sqrt
x = 0
while True:
a = x + 100
b = x + 268
if int(sqrt(a)) ** 2 == a and int(sqrt(b)) ** 2 == b:
print(x)
break
x += 1
```
输出结果为:
```
21
```
解释:我们不断地枚举 $x$,然后计算 $x+100$ 和 $x+268$ 是否是完全平方数,如果是,则说明当前的 $x$ 是符合要求的数。注意判断完全平方数时需要将其开方后取整,然后再平方,如果结果和原来的数相等,则说明是完全平方数。在本题中,最小的符合要求的数是 $21$。
阅读全文