Python用二分法求平方根的案例
作者:sharkandshark 发布时间:2021-09-27 10:05:01
标签:Python,二分法,平方根
我就废话不多说了,大家还是直接看代码吧~
def sq2(x,e):
e = e #误差范围
low= 0
high = max(x,1.0) #处理大于0小于1的数
guess = (low + high) / 2.0
ctr = 1
while abs(guess**2 - x) > e and ctr<= 1000:
if guess**2 < x:
low = guess
else:
high = guess
guess = (low + high) / 2.0
ctr += 1
print(guess)
补充:数值计算方法:二分法求解方程的根(伪代码 python c/c++)
数值计算方法:
二分法求解方程的根
伪代码
fun (input x)
return x^2+x-6
newton (input a, input b, input e)
//a是区间下界,b是区间上界,e是精确度
x <- (a + b) / 2
if abs(b - 1) < e:
return x
else:
if fun(a) * fun(b) < 0:
return newton(a, x, e)
else:
return newton(x, b, e)
c/c++:
#include <iostream>
#include <cmath>
using namespace std;
double fun (double x);
double newton (double a, double b,double e);
int main()
{
cout << newton(-5,0,0.5e-5);
return 0;
}
double fun(double x)
{
return pow(x,2)+x-6;
}
double newton (double a, double b, double e)
{
double x;
x = (a + b)/2;
cout << x << endl;
if ( abs(b-a) < e)
return x;
else
if (fun(a)*fun(x) < 0)
return newton(a,x,e);
else
return newton(x,b,e);
}
python:
def fun(x):
return x ** 2 + x - 6
def newton(a,b,e):
x = (a + b)/2.0
if abs(b-a) < e:
return x
else:
if fun(a) * fun(x) < 0:
return newton(a, x, e)
else:
return newton(x, b, e)
print newton(-5, 0, 5e-5)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/sharkandshark/article/details/83625839
0
投稿
猜你喜欢
- 在前一篇博客我们学习了 Go 数组,其要求所有元素为同一数据类型,如果希望存储不同类型的数据,就要用到结构体相关知识。结构体的定义:存储相同
- 拓扑排序几乎在所有的项目,甚至日常生活,待完成的不同任务之间通常都会存在着某些依赖关系,这些依赖关系会为它们的执行顺序行程表部分约束。对于这
- 1 map使用1.1 map定义map是一种无序的集合,对应的key (索引)会对应一个value(值),所以这个结构也称为关联数组或字典。
- 本文实例为大家分享了vue数据请求拦截的具体代码,供大家参考,具体内容如下在src文件夹下创建utils文件夹同时在文件夹下创建reques
- 安装好mysql后,在终端输入 mysql -u root -p 按回车,输入密码后提示access denied......ues pas
- 模式库在模式库里,我将列出所有电子商务网站需要的模式.以下将罗列出经典常用的模式案例,我也试图让这些模式看起来更有趣味性与实用性。(Yaho
- SOCKET编程socket(套接字):是一个网络通信的端点,能实现不同主机的进程通信, -通过IP+端口定位对方并发送消息的通信机制分为U
- 1. 代码讲解1.1 导库import os.pathfrom os import listdirimport numpy as npimp
- 目录1.利用 while True: + sleep() 实现定时任务2.使用 Timeloop 库运行定时任务3.利用 threading
- 方法一: 在给出的输入CD-KEY(序列号)的界面中,输入你已经安装的windows server 2003 的CD-KEY(序列号)即可以
- 我们知道分析MySQL语句查询性能的方法除了使用EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定
- 准备工作下载python,本文以python3.6为例。python3.6下载地址:python3下载地址,选择合适的版本安装。安装成功后,
- 本文以修改用户名密码单元为案例,编写测试脚本。完成修改用户名密码模块单元测试。(ps.这个demo中登陆密码为“admin”)1. 打开浏览
- 基本开发环境· Python 3.6· Pycharm相关模块使用目标网页分析输入想看的小说内容,点击搜索这里会返回很多结果,我只选择第一个
- 今天彬Go将和大家一起讨论网页设计趋势中很重要的环节,那就是”勾引”用户的按钮。所谓”勾引”用户的按钮,其实对于Web设计师来说,就是如何设
- 一 接口介绍如果说gorountine和channel是支撑起Go语言的并发模型的基石,让Go语言在如今集群化与多核化的时代成为一道亮丽的风
- Mysql调优Explain工具详解以及实战演练 Explain工具介绍Explain分析示例explain 两个变种explain中的列
- 初学python,对python的对齐很重视,为了防止出错,使用spyder工具提供的功能下面是方法:1、首先打开Tools菜单栏下的Pre
- 前言学学Python中操纵JSON的知识。学完本文,你可以学到如下内容:1、JSON是什么?2、JSON与XML的优劣差异?3、将Pytho
- 加上设置字符编码的方法:response.setHeader("charset","gb2312")