对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使用二分法求平方根的简单示例相关推荐

  1. python爬取歌曲评论_python 爬取歌曲评论的简单示例

    这篇文章主要为大家详细介绍了python 爬取歌曲评论的简单示例,具有一定的参考价值,可以用来参考一下. 感兴趣python 爬取歌曲评论的简单示例的小伙伴,下面一起跟随512笔记的小编罗X来看看吧. ...

  2. python函数名是变量_Python 变量做函数名的简单示例

    这篇文章主要为大家详细介绍了Python 变量做函数名的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! PHP ...

  3. python使用pymysql连接mysql_python3使用PyMysql连接mysql数据库的简单示例

    这篇文章主要为大家详细介绍了python3使用PyMysql连接mysql数据库的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小 ...

  4. python如何计算成绩平方根_python 使用二分法计算平方根

    python 使用二分法计算平方根 from math import sqrt def mysqrt(num,small): assert num>0 assert small>0 low ...

  5. python输入数学表达式并求值_Python 条件表达式求值

    Python 条件表达式求值,Python对表达式执行严格排序,其中值得注意的例外情况是短路运算符and和or.对语句的求值也有严格的顺序要求,这使得难以对其进行优化,因为可能会破坏严格的求值顺序. ...

  6. python散点图拟合曲线如何求拟合_python 拟合曲线并求参

    原博文 2019-06-02 14:35 − 需要对数据进行函数拟合,首先画一下二维散点图,目测一下大概的分布, 所谓正态分布,就是高斯分布,正态曲线是一种特殊的高斯曲线. python的scipy. ...

  7. python中素数的求法_Python多种方法求某个范围内的所有素数(质数)

    素数简介 质数又称素数.一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数:否则称为合数. 方法1 def primeNUM(min,max): if min==1: print( ...

  8. python二元函数求导_python实现GA求二元函数最大值(来自知乎)

    importmath, randomclassPopulation:#种群的设计 def __init__(self, size, chrom_size, cp, mp, gen_max):#种群信息 ...

  9. python如何创建一个类_python (知识点:类)简单的创建一个类

    #!/usr/bin/env python # -*- coding: utf-8 -*- """ Created on Mon Nov 14 01:01:29 2016 ...

最新文章

  1. mqtt+htttp+websocket
  2. Linux登录那点事
  3. 2014年云计算服务将取代PC电脑
  4. Policy Injection Application Block
  5. awstats 安装与配置
  6. 使用饼图_使用R做饼图展示单细胞的cluster的比例
  7. Application Virtualization 4.5 部署之(三)(
  8. jquery对Select的操作
  9. solr analyzer_查看您的Solr缓存大小:Eclipse Memory Analyzer
  10. python对列表中的数值进行统计运算_python-从单词列表中计算元音并返回数字作......
  11. 前端JavaScript之BOM与DOM
  12. 【读书笔记】钢铁是怎么炼成的
  13. 5道经典面试题【转载】
  14. OpenModelica中的可视化仿真
  15. java md5加密与解密_Java——MD5加密与解密
  16. 智简魔方财务系统详细环境搭建和安装教程
  17. 计算机专业试讲10分钟教案,幼儿园10分钟试讲教案
  18. Python 批量下载SIGMOD,VLDB的论文 Mac OS
  19. Linux连接蓝牙键盘
  20. 【详细教程】App inventor连接阿里云平台(APP显示STM32发来的温湿度数据等)

热门文章

  1. 大剑无锋之浅析Cookie/Session/Token
  2. JVM从入门到精通(一):JVM入门级class文件格式
  3. C# 类的派生 输出个人信息
  4. PAT1005 继续(3n+1)猜想 (25 分)【vector erase需要注意的地方】
  5. JDK12的新特性:teeing collectors
  6. python数据科学实践指南_《Python数据科学实践指南》——导读-阿里云开发者社区...
  7. hypermesh 复合材料_【技术邻】HyperMesh复合材料建模——坐标系调整
  8. python不可以操作access数据库_Python操作Access数据库基本操作步骤分析
  9. kotlin学习之类的扩展(四)
  10. Effective Java之在公有类中使用访问方法而非公有域(十四)