一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数...
题目为:题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?以下是我的代码:
from math import sqrt
for i in range(100000):
a = sqrt(i+100)
b = sqrt(i+268)
if isinstance(a,int) and isinstance(b,int):
print(i)
结果不能输出i,请问是什么原因? 因为a和b都是浮点数,即使a为11.0也是浮点数。
按你的思路改的:
from math import sqrt
for i in range(100000):
a = sqrt(i+100)
b = sqrt(i+268)
if a.is_integer() and b.is_integer():
print(i)
break
因为sqrt出来的数字必是浮点型,比如sqrt(100) == 10.0
所以按照你的思路,你可以这样写:
from math import sqrt
for i in range(100000):
a = sqrt(i+100)
a_int = int(sqrt(i+100))
b = sqrt(i+168)
b_int = int(sqrt(i+168))
if a == a_int and b == b_int:
print(i) 指头比思想慢 发表于 2018-7-16 16:25
因为sqrt出来的数字必是浮点型,比如sqrt(100) == 10.0
所以按照你的思路,你可以这样写:
感谢{:7_131:} 冬雪雪冬 发表于 2018-7-15 22:58
因为a和b都是浮点数,即使a为11.0也是浮点数。
按你的思路改的:
感谢{:7_113:}
页:
[1]