1:最好的是牛顿迭代法
2:其次是二分法

a=s(19)
#不用函数实现开方
def s(n):#循环法if n<0:return -1else:for i in range(1,n,0.001):      #python 的range不能使用小数while(i*i-n>1e-9)or(i*i-n<-1e-9):continuereturn i#失败def s(n):#二分法,构造函数f(x)=x*x-n,然后构造上下界[1,n],比较mid=(start+end)/2.0,比较mid*mid-n和极小值的大小1e-9,\#如果大于0,则将上界变小,end=mid,如果小于0,说明mid小于正确值,应该将下界变大,start=mid#19只需要36次i=0if n<0:return -1else:start=1end=nmid=(start+end)/2.0while (mid*mid-n)>1e-9 or ((mid*mid-n)<-(1e-9)):i=i+1print i,midif (mid*mid-n>1e-9):end=midelif(mid*mid-n<-1e-9):start=midmid=(start+end)/2.0print i,midreturn mid#失败def s(n):#最好的用牛顿迭代法,19只需要6次i=0if n<0:return -1else:start=1while(start*start-n)>1e-9 or ((start*start-n)<-(1e-9)):start=(start+n/start)/2.0i=i+1print i,startreturn start 

不用sqrt()函数,如何求平方根相关推荐

  1. 不用sqrt()函数,求平方根的三种方法

    最近看到了这个比较有意思的题目,探究了一下. 文章目录 1.二分法 2.牛顿法 3.来自于Quake III源码的解法 4.完整代码 参考 当然有最暴力的方法,直接遍历,(0.0, x)区间内所有的数 ...

  2. 用matlab画5日均线,用MATLAB求移动平均线,不用MOVAVG函数,求MA5,MA10 – MATLAB中文论坛...

    移动平均线,简称均线.它是将某一段时间的收盘价之和除以该周期. 比如日线MA5指5天内的收盘价除以5 .请在一张图中用三种不同颜色绘制该股票收盘价数据.5日移动平均MA5.10日移动平均MA10. 时 ...

  3. Matlab自适应均线_用MATLAB求移动平均线,不用MOVAVG函数,求MA5,MA10 – MATLAB中文论坛...

    移动平均线,简称均线.它是将某一段时间的收盘价之和除以该周期. 比如日线MA5指5天内的收盘价除以5 .请在一张图中用三种不同颜色绘制该股票收盘价数据.5日移动平均MA5.10日移动平均MA10. 时 ...

  4. golang语言牛顿法求平方根

    package mainimport ("fmt" )// 作为练习函数和循环的简单途径,用牛顿法实现开方函数. // 在这个例子中,牛顿法是通过选择一个初始点 z 然后重复这一过 ...

  5. 用python实现二分法求平方根_二分法求平方根(Python实现)

    使用二分法(Bisection Method)求平方根. def sqrtBI(x, epsilon): assert x>0, 'X must be non-nagtive, not ' + ...

  6. 【转】 不适用Sqrt函数开方,精度小于指定精度

    给定一个数A,不使用sqrt函数,求A的开方,要求精度大于0.0001 该题有两种方法求解:①牛顿迭代法:②二分法 ①牛顿迭代法: 1.牛顿迭代法知识: 牛顿迭代法(Newton's method)又 ...

  7. sqrt函数模拟实现的两种方法

    起因:在leetcode刷题时,有一道题目考察了有关sqrt的原理的题目,当时就去查了网上的文章,结果发现,一开始的时候看的很懵,最后也是搞定了两种方法,今天我就以最简单的方式写下这两种方式的思路讲解 ...

  8. 求平方根sqrt()函数的底层算法效率问题

    我们平时经常会有一些数据运算的操作,需要调用sqrt,exp,abs等函数,那么时候你有没有想过:这个些函数系统是如何实现的?就拿最常用的sqrt函数来说吧,系统怎么来实现这个经常调用的函数呢? 虽然 ...

  9. 【Python】Python 中sqrt函数求负数的平方根

    Python的 math模块 中 sqrt 函数求负数平方根会报如下的错误 实例: 上述 math 模块中 sqrt 函数只能进行浮点数的运算.我们知道负数的平方根是虚数(以及复数,即实数和虚数之和) ...

最新文章

  1. 人工智能恶意使用报告:预测、预防和缓解
  2. Windows Live Writer连接sharePoint博客时,有一个权限相关的BUG
  3. Centos 7 安装 Haproxy
  4. Web 之困 现代Web应用安全指南一本好书 69.00?
  5. 在TCP客户端连接成功的回调函数里,无法访问到客户端套接字的明细
  6. oracel Pipelined pipe row的用法
  7. 查找满足断言的第一个元素
  8. 用JS写了一个模拟串行加法器
  9. RuoYi-Cloud 部署篇_04(windows环境 mysql+nginx版本)
  10. 高级JAVA - 高并发下接口限流 Semaphore
  11. Protocol Buffers 学习(6):文件 | 字段选项介绍
  12. 选择语句详解(C++)
  13. linux libsqlite3 dev,在centos中安装sqlite3 dev和其他软件包
  14. HTML+CSS零基础学习笔记(二)
  15. android dmp文件解析,用minidump_stackwalk分析dmp文件失败
  16. HTML颜色与RGB颜色的转换
  17. NAIPC2018-K-Zoning Houses
  18. 云服务器(Centos7)搭建jdk环境
  19. win11系统下安装lighttools8.6无加密狗版的方法
  20. 价值投资私募基金三人谈

热门文章

  1. 解析机器人流程自动化技术的原理
  2. 爬取在行平台数据(1)——动态加载页面分析
  3. 【总结】1263- 弄懂 SourceMap,前端开发提效 100%
  4. 罗振宇2022“时间的朋友”跨年演讲全文稿(pdf)
  5. python编程基础知识点总结_【转载】Python编程中常用的12种基础知识总结
  6. 对英特尔在嵌入式市场的几个猜想
  7. python runner功能_Appium+python自动化(二十三)- 真假美猴王Monkeyrunner与Monkey傻傻的分不清楚(超详解)...
  8. 关于Python的虚拟环境
  9. 城市垃圾渗滤液除氨氮的技术分享
  10. Java安全攻防之从wsProxy到AbstractTranslet