def sq2(x):
e = 1e-6 # 误差范围
low = 0
high = max(x, 1.0) # 处理大于0小于1的数
guess = (low + high) / 2.0
ctr = 1
while abs(guess ** 2 - x) > e and ctr <= 1000:
if guess ** 2 < x:
low = guess
else:
high = guess
guess = (low + high) / 2.0
ctr += 1
return guess
if __name__ == '__main__':
print(sq2(0.5))
二分法求平方根
最新推荐文章于 2022-10-20 11:36:39 发布