牛顿迭代法求平方根

sqrt.py 求y的平方根

# -*- coding: UTF-8 -*-
#sqrt.py 求y的平方根
y=1010
EPSILON=1e-10
x=y
while abs(x-y/x)>(EPSILON):#x=y/x 就是解  
    x=(x+y/x)/2.0#二分法缩小搜索范围
    #print(x)

print("anser=%f" % x) 

 

求k次方根

# -*- coding: UTF-8 -*-
#sqrtn.py 求y的k次方根
y=64
k=3  #立方根
EPSILON=1e-10
x=y
while abs((x**k)-y)>(EPSILON):
    x=((k-1)*x+y/(x**(k-1)))/k
    #print(x)

print("anser=%f" % x) 

 

你可能感兴趣的:(python,python)