私は独自の方法でコーディングしようとしましたが、間違った答えが得られたことがわかりました。
このページを読みました。そして、プロセスを開始してみてください:
f(x)=x^2-e
数学:
だから私のコードがあります:
def sqrtRootNR(num, count, epsl):
"""
for test
"""
num = float(num)
guess = num / 2.0
diff = guess ** 2.0 - num
_cnt = 0
while abs(diff) > epsl and _cnt < count:
guess = guess - (guess ** 2.0 + epsl) / (guess * 2.0)
diff = guess ** 2.0 - num
_cnt = _cnt +1
print guess, _cnt
sqrtRootNR(2, 100, 0.0001)
しかし、私は間違った答えを得ました。
この関数の出力は次のとおりです。
D:\poc>python sq.py
0.0595177826557 100