用python实现二分法求平方根_二分法求平方根(Python实现)
使用二分法(Bisection Method)求平方根。
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
验证一下。
上面的方法,如果 X<1 ,就会有问题。因为 X (X<1)的平方根不在 [0, x] 的范围内。例如,0.25,它的平方根——0.5 不在 [0, 0.25] 的区间内。
那如何求0.25的平方根呢?
只要略微改动上面的代码即可。注意6行和7行的代码。
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 = 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
再检验一下:
note 5 二分法求平方根,素数,回文数
+二分法求平方根 x = float(raw_input('Enter the number')) low = 0 high = x guess = (low + high ) / 2 if x &l ...
python之二分法求平方根
前几天学完python的程序分支结构后,老师课后留了一个问题,用两种方法计算一个大于或等于 1 的实数 n 数的平方根. 描述设计一个用二分法计算一个大于或等于 1 的实数 n 的平方根的函数sqrt ...
[转载]求平方根sqrt()函数的底层算法效率问题
我们平时经常会有一些数据运算的操作,需要调用sqrt,exp,abs等函数,那么时候你有没有想过:这个些函数系统是如何实现的?就拿最常用的sqrt函数来说吧,系统怎么来实现这个经常调用的函数呢? 虽然 ...
C++版 - Leetcode 69. Sqrt(x) 解题报告【C库函数sqrt(x)模拟-求平方根】
69. Sqrt(x) Total Accepted: 93296 Total Submissions: 368340 Difficulty: Medium 提交网址: https://leetcod ...
C语言复习---迭代法,牛顿迭代法,二分法求根
一:用迭代法求 x=√a.求平方根的迭代公式为:X(n+1)=(Xn+a/Xn) /2. #define _CRT_SECURE_NO_WARNINGS #include
141. Sqrt(x)【牛顿迭代法求平方根 by java】
Description Implement int sqrt(int x). Compute and return the square root of x. Example sqrt(3) = 1 ...
求平方根算法 Heron’s algorithm
求平方根问题 概述:本文介绍一个古老但是高效的求平方根的算法及其python实现,分析它为什么可以快速求解,并说明它为何就是牛顿迭代法的特例. 问题:求一个正实数的平方根. 给定正实数 \(m\),如 ...
[LeetCode] Sqrt(x) 求平方根
Implement int sqrt(int x). Compute and return the square root of x. 这道题要求我们求平方根,我们能想到的方法就是算一个候选值的平方, ...
ytu 1041: 迭代法求平方根(水题)
1041: 迭代法求平方根 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 227 Solved: 146[Submit][Status][Web Bo ...
随机推荐
java 反射获取类的属性 类型 名称和值
/** * 获取属性类型(type),属性名(name),属性值(value)的map组成的list * */ private List getFiledsInfo(Object o){ Field[ ...
centos7 firewall 防火墙
在部署dubbo-monitor 和dubbo-admin zookeeper时候,外部访问不了部署好的服务,因为端口问题 ,现在把端口操作总结一下 参考: http://www.cnblogs.co ...
JavaScript 面向对象程序设计(下)&mdash;&mdash;继承与多态 【转】
JavaScript 面向对象程序设计(下)--继承与多态 前面我们讨论了如何在 JavaScript 语言中实现对私有实例成员.公有实例成员.私有静态成员.公有静态成员和静态类的封装.这次我们来讨论 ...
[AapacheBench工具]web性能压力测试工具的应用与实践
背景:网站性能压力测试是性能调优过程中必不可少的一环.服务器负载太大而影响程序效率是很常见的事情,一个网站到底能够承受多大的用户访问量经常是我们最关心的问题.因此,只有让服务器处在高压情况下才能真正体 ...
OA系统配置文件
第一章 web.xml配置文件解读 1. web.xml文件解读 lemon OA系统的核心配置文件都放在spring目录下的具有applicationContext的前缀文件.Classpath后有 ...
sort uniq妙用
cat a b | sort | uniq > c # c是a和b的并集 cat a b | sort | uniq -d > c # c是a和b的交集 cat a b b | s ...
Android Studio 提高工作效率的奇技
1.ctrl+f12 ctrl+f12此快捷键可以调出当前文件的大纲,并通过模糊匹配快速跳转至指定的方法.勾选上“show anonymous classes”后其功能相当于Eclipse中的ctrl ...
JS中的onclick事件
原文链接:https://segmentfault.com/q/1010000007955542?_ea=1503986 我自己做了一下测试. 这个是在html里面直接绑定onclick事件,我打印了 ...
Postgresql 密码设置
今天下午 陷进去了 其实很简单的一个事情结果浪费了 接近一个小时. 做事情必须要细致一些. 自己的确做的不好. 这里面简单说一下pg_hba.conf 和 postgresql 密码的一些设置问题. ...
C#:DateTime格式增减时间
DateTime time = DateTime.Now(); DateTime XMinutesrLater = time.AddMinutes(X); // X分钟以后的时间,即在当前时间基础上增 ...
用python实现二分法求平方根_二分法求平方根(Python实现)相关推荐
- 怎么用python编写程序计算标准差_自学生信Python(第五天)|如何计算标准差?...
如何计算标准差? 本人是一枚生物学的学生,由于对生物信息学特别感兴趣,于是想自学生物信息学(新手莫怪).了解到生物信息学要有编程基础,尤其是要会一门编程语言,例如:R语言.Python.Perl等,还 ...
- python 鱼c工作室作业_#鱼C工作室Python作业#图解python百度云
最好的python视频教程谁有 我这里有python全套高清教学视频,非常适合新手小白,真实分享,望采纳点赞. python 网盘 python视频教程从入门到精通 有提取码:提取码:8ste 求一个 ...
- python科学计算教程视频_【P14】Python科学计算与图形渲染库视频课程视频教程 it教程...
Python视频教程名称: Python科学计算与图形渲染库视频课程视频教程 Python视频教程 [IT视频教程网-www.itspjc.com] it教程 6 T6 ^9 L+ E4 C, }0 ...
- 趣学python教孩子学编程_《趣学Python——教孩子学编程》学习笔记第1-3章
第1章 Python不是大蟒蛇 1.1 关于计算机语言 计算机程序是一组让计算机执行某种动作的指令.软件就是计算机程序的集合. 一种编程语言就是一种特定的与计算机交谈的方式,这种方式使用计算机和人都能 ...
- python 少儿趣味编程下载_零基础学Python编程(少儿趣味版)
本书是一本少儿编程入门书,适合零基础的读者.本书以"派森号"飞船和西西船长等人的童话故事为载体,从头开始介绍了Python语言的基础语法.全书共有6个章节.每章都有约十个独立的内容 ...
- python扩展库导入方式_使用pip安装Python扩展库的方法
本文节选自作者的<Python编程基础及应用>视频教程.Python编程基础及应用_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com 使用pip进行安装 ...
- python for loop循环程序语句_零基础学习 Python 之 for 循环语句
写在之前 大家好,这里是零基础学习 Python 系列,在这里我将从最基本的Python 写起,然后再慢慢涉及到高阶以及具体应用方面.我是完全自学的 Python,所以很是明白自学对于一个人的考验,所 ...
- 学python去哪做项目_有哪些适合 Python 刚入门者去做的项目?
学软件开发的都知道实战项目对于学好一门语言是很重要的.在这里可以向大家推荐几个Python实战项目 项目1.Python 图片转字符画 本课程用 50 行 Python 代码完成图片转字符画小工具.通 ...
- python程序不出结果_超详细的Python入门教程,1小时就可以学会
为什么使用Python 假设我们有这么一项任务:简单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200. 思路:用shell编程.(Linux通常是 ...
最新文章
- Codeforces Round #648 (Div. 2)题解 A-D
- Spring创建对象的三种方式以及创建时间
- 六年级下册百分数计算题_小学六年级数学期末考,题量较大,出题全面、灵活...
- WebSphere Classloader内存泄漏预防
- java初级学习04
- 用台式机搭建服务器测试环境_2020年十大最佳台式机环境
- Noi2016 循环之美
- 10分钟入门Shell脚本编程
- 程序员客栈(项目简介)
- 如何快速制作出精致的ppt模板?
- matlab图像粘连计数,Matlab图像处理在水稻谷粒计数中的应用
- 逆波兰表达式(含小数)、C语言
- 【读书笔记】投资中最简单的事-邱国鹭,别人恐惧我贪婪,别人贪婪我respect
- RepOptimizer学习笔记
- java 倒计时_Java倒计时实现的三种简单方式
- 2021西湖论剑misc——Yusa的小秘密
- 《百度输入法》导致EXCEL 无法使用快捷键Ctrl+;插入日期
- SAP 中的货币(Currencies)
- 小米游戏本 七代 deepin 网卡ac 8265 wifi 驱动 安装
- 电子邮箱的工作原理以及SMTP、POP3、IMAP之间的联系和区别