Python入门习题(89)——OpenJudge百练习题:二分法求函数的零点
OpenJudge百练第4142号习题:二分法求函数的零点
- 题目描述
- 解题思路
- 参考答案
- 测试用例
- 小结
题目描述
来源
OpenJudge网站 —— 百练习题集-第4142号习题
要求
总时间限制: 3000ms 单个测试点时间限制: 1000ms 内存限制: 65536kB
描述
有函数:
f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121
已知 f(1.5) > 0 , f(2.4) < 0 且方程 f(x) = 0 在区间 [1.5,2.4] 有且只有一个根,请用二分法求出该根。
输入
无。
输出
该方程在区间[1.5,2.4]中的根。要求四舍五入到小数点后6位。
样例输入
无
样例输出
不提供
解题思路
- 对于区间[x1, x2],令mid = (x1 + x2) / 2,即mid是区间中点。如果f(mid)大于0,则在[mid, x2]区间内寻找函数的零点。如果f(mid)小于0,则在[x1, mid]区间内找函数的零点。
- 上述步骤不断重复,直至x2 - x1小于10-7。此即为二分法求函数的零点。
参考答案
def f(x):return x**5 - 15 * x**4 + 85 * x**3 - 225 * x**2 + 274 * x - 121LIMIT = 10**-7
x1 = 1.5
x2 = 2.4
while x2 - x1 > LIMIT:mid = (x1 + x2) / 2y = f(mid)if y > 0:x1 = midelif y < 0:x2 = midprint("%.6f"%((x1 + x2) / 2))
测试用例
无。
小结
- 二分法是典型的算法。本题采用的算法本质上是二分查找法。
- 二分查找算法步骤中的每一轮排除掉一半的查找范围(也叫搜索空间)。
Python入门习题(89)——OpenJudge百练习题:二分法求函数的零点相关推荐
- 信息学奥赛一本通(1241:二分法求函数的零点)
1241:二分法求函数的零点 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 5682 通过数: 3407 [题目描述] 有函数:f(x)=x^5−15x^ ...
- Bailan4142 二分法求函数的零点【二分法】
4142:二分法求函数的零点 总时间限制: 1000ms 内存限制: 65536kB 描述 有函数: f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - ...
- 二分法求函数的零点(信息学奥赛一本通-T1241)
[题目描述] 有函数:f(x)=x^5−15x^4+85x^3−225x^2+274^x−121 已知f(1.5)>0 ,f(2.4)<0 且方程f(x)=0 在区间[1.5,2.4] 有 ...
- 二分法求函数的零点c++
题目描述] 有函数:f(x)=x5−15x4+85x3−225x2+274^x−121 已知f(1.5)>0 ,f(2.4)<0 且方程f(x)=0 在区间[1.5,2.4] 有且只有一个 ...
- 二分法求函数的零点(二分不适合不变号零点的情况)
二分法的定义: 对于在区间[a,b]上连续不断且f(a)*f(b)<0的函数,y=f(x),通过不把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐渐逼近零点,进而得到零点近似值的方法. ...
- 二分法求函数的零点(c语言)
题目描述 有函数: f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已知 f(1.5) > 0 , f(2.4) < 0 且方程 ...
- 【百炼】二分法求函数的零点(c语言)
描述 有函数: f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已知 f(1.5) > 0 , f(2.4) < 0 且方程 f ...
- Python入门习题大全——数字 8
Python入门习题大全--索引 编写4个表达式,它们分别使用加法.减法.乘法和除法运算,但结果都是数字8.为使用print语句来显示结果,务必将这些表达式用括号括起来,也就是说,你应该编写4行类似于 ...
- Python入门习题大全——词汇表2
Python入门习题大全--索引 既然你知道了如何遍历字典,现在请整理你为完成上一个例题而编写的代码,将其中的一系列 print 语句替换为一个遍历字典中的键和值的循环.确定该循环正确无误后,再在词汇 ...
- Python入门习题大全——词汇表
Python入门习题大全--索引 Python 字典可用于模拟现实生活中的字典,但为避免混淆,我们将后者称为词汇表. 想出你在前面学过的5个编程词汇,将它们用作词汇表中的键,并将它们的含义作为值存储在 ...
最新文章
- [翻译]SQL Server 2005 Analysis Services性能指南
- 广东省计算机大赛设计什么时候,2017年广东省大学生计算机设计大赛
- MongoDB学习笔记(二)使用Java操作MongoDB
- git bash 风格调整
- matlab 形态学 颗粒_数字图像处理Matlab-形态学图像处理(附代码)
- 【转】阿里技术专家详解 DDD 系列 第一讲- Domain Primitive
- 数据结构与算法-字典的时间复杂度
- 关于@RequestBody注解出现的三点错误
- python日志处理_Python之日志处理(logging模块)
- 空间波(space wave)
- 翻译网站去除输入内容的换行符/回车符【操作简单】适用谷歌/百度/有道/DeepL/腾讯/必应等
- UOS家庭版(21.2)安装SecureCRT(scrt-9.1.1-2638.ubuntu20-64.x86_64.deb)无法运行问题
- Twitter上热门的技巧与思路
- 局部敏感哈希算法介绍
- B站小甲鱼Python基础学习课堂笔记
- 请问蓝牙设备如何测试?
- fixedsys字体 win7_fixedsys字体 win7_帮您win7系统记事本像Word文档一样更换字体的解决步骤...
- 练习:罗马数字转整数
- 什么是https?https为什么安全?
- windows 导oracle用户,windows下Oracle导入导出用户数据