初めに
このプログラムは無駄です
numpy.sqrtかmath.sqrtを使った方が効率的です
ただこれhttps://qiita.com/ruuuuuuuty/items/e5d760a80f9ce5db860f
見て電車内で暇だし書くかってノリでPythonにしました
やってみたら死ぬほど書き替えるのが簡単でなんでやったんだろうって感じです
コード
def sqrt1(a):
left = 0.0
right = a
mid = 0.0
for i in range(1000):
mid = (left + right) / 2
if(mid * mid - a < 0):left = mid
else:right = mid
return right
def sqrt2(a):
b = a
for i in range(1000):
b = (b * b + a) / (2 * b)
return b