日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python用二分法求平方根_Python使用二分法求平方根的简单示例

發布時間:2024/1/23 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python用二分法求平方根_Python使用二分法求平方根的简单示例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對python這個高級語言感興趣的小伙伴,下面一起跟隨編程之家 jb51.cc的小編兩巴掌來看看吧!

使用二分法(Bisection Method)求平方根。

# @param 使用二分法(Bisection Method)求平方根。

# @author 編程之家 jb51.cc|jb51.cc

def sqrtBI(x,epsilon):

assert x>0,'X must be non-nagtive,not ' + str(x)

assert epsilon > 0,'epsilon must be postive,not ' + str(epsilon)

low = 0

high = x

guess = (low + high)/2.0

counter = 1

while (abs(guess ** 2 - x) > epsilon) and (counter <= 100):

if guess ** 2 < x:

low = guess

else :

high = guess

guess = (low + high)/2.0

counter += 1

return guess

# End www.jb51.cc

驗證一下。

>>> sqrtBI(2,0.000001)

>>> 1.41421365738

上面的方法,如果 X<1 ,就會有問題。因為 X (X<1)的平方根不在 [0,x] 的范圍內。例如,0.25,它的平方根——0.5 不在 [0,0.25] 的區間內。

>>> sqrtBI(0.25,0.000001)

>>> 0.25

那如何求0.25的平方根呢?

只要略微改動上面的代碼即可。注意6行和7行的代碼。

# @param 使用二分法(Bisection Method)求平方根。

# @author 編程之家 jb51.cc|jb51.cc

def sqrtBI(x,not ' + str(epsilon)

low = 0

high = max(x,1.0)

## high = x

guess = (low + high)/2.0

counter = 1

while (abs(guess ** 2 - x) > epsilon) and (counter <= 100):

if guess ** 2 < x:

low = guess

else :

high = guess

guess = (low + high)/2.0

counter += 1

return guess

# End www.jb51.cc

驗證一下:

>>> sqrtBI(0.25,0.000001)

>>> 0.5

總結

以上是生活随笔為你收集整理的python用二分法求平方根_Python使用二分法求平方根的简单示例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。