用来练手的python 练习题,原链接 : python练习实例3
拿到题目就写了如下代码,思路是因为使用**0.5进行开平方操作时,python会将数据类型自动转换为float单精度浮点型。这里利用提取其整数部分,来判断这个数是否是完全平方数。
z = 13
while (z**2 - 168)**0.5 != int((z**2 - 168)**0.5):
z+=1
x = z**2-268
print(x)
输出结果 :

这个代码问题也很明显,没有办法穷举而只能找出最小的x的值。为了穷举所有的结果,参考答案给出了以下分析 :
假设该数为 x。
1、则: x + 100 = n 2 , x + 100 + 168 = m 2 x + 100 = n^2, x + 100 + 168 = m^2 x+100=n2,x+

这篇博客介绍了Python中判断一个数是否为完全平方数的方法,通过开方取整来初步判断,并探讨了如何穷举所有可能的完全平方数。作者分析了等式性质,设定变量并列出条件,最后提供了标准答案代码,实现了在特定范围内遍历查找完全平方数。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



