二分法MATLAB代码

这篇具有很好参考价值的文章主要介绍了二分法MATLAB代码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

matlab二分法程序代码,matlab,开发语言,算法
本质是通过不断进行区间压缩来获取函数零点。
二分法的终止条件:区间长度小于等于精度要求

流程:
matlab二分法程序代码,matlab,开发语言,算法
matlab二分法程序代码,matlab,开发语言,算法

x=linspace(0,15);
y=(x-1).*(x-3).*(x-9).*(x-12);
plot(x,y);%画函数图像
%将坐标轴平移到原点
ax = gca;
ax.XAxisLocation = 'origin';
ax.YAxisLocation = 'origin';
%将坐标轴平移到原点
xlabel('x');
ylabel('y');
syms X Y;
Y=@(X) (X-1).*(X-3).*(X-9).*(X-12);
a=2;b=6;e=0.01;%确定区间及收敛精度
sign=1;%循环进行标志
tic
  while(sign==1)
    c=(a+b)/2;
    if(Y(c)==0)%零点即为c
        fprintf('零点精确解为%f\n',c);
    else
        if(Y(a)*Y(c)<0)%零点在[a,c]之间
            b=c;
        else %零点在[c,b]之间
            a=c;
        end
    end
    if(abs(b-a)<=e|Y(c)==0)
        sign=0;
        fprintf('二分法求得零点解为%f\n',c);
    else
        sign=1;
    end
end
toc
零点精确解为3.000000
二分法求得零点解为3.000000
时间已过 0.005635 秒。

如下图所示:
matlab二分法程序代码,matlab,开发语言,算法文章来源地址https://www.toymoban.com/news/detail-744966.html

到了这里,关于二分法MATLAB代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【算法】—二分法详解

    ①定义: 二分查找算法也称折半搜索算法,对数搜索算法,是一种在 有序数组 中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素

    2024年02月09日
    浏览(35)
  • 二分法相关使用

    在线OJ:704. 二分查找 有序数组下的二分思路如下: 由于这里是有序数组, 我们可以可以先得到中点位置, 中点可以把数组分为左右两边; 如果中点位置的值等于目标值, 直接返回中点位置; 如果中点位置的值小于目标值, 则去数组中点左侧按同样的方式查找; 如果中点位置的值大

    2024年02月07日
    浏览(34)
  • 二分法简单题

    2024年01月24日
    浏览(36)
  • 【二分查找】一文带你掌握二分法 (附万能模板)

    一、简介 哪怕没有学过编程的同学,也许不知道二分法这个名字,但也一定接触过它的核心思想。不了解的同学也没关系,我用一句话就能概括出它的精髓: 将一个区间一分为二,每次都舍弃其中的一部分。 二分法能够极大地降低我们在解决问题时的时间复杂度。假如你要

    2024年01月19日
    浏览(40)
  • 牛顿法、割线法、二分法

    牛顿法求解非线性方程组 割线法求解非线性方程组 二分法求解根号3  另外,今天上机课写程序时,发现不同的起始点可以收敛到不同的零点。也许这是一个新的值得研究的地方。 看来,计算数学也是这样,光听理论无法实现大的突破,也没法产生好的想法,必须在实践应用

    2024年02月05日
    浏览(40)
  • 非线性方程二分法

    优点:算法直观、简单、总能保证收敛;局限:收敛速度慢、一般不单独用它求根,仅为了获取根的粗略近似 设 f ( x ) f(x) f ( x ) 在 [ a , b ] [a,b] [ a , b ] 上连续、严格单调、满足条件 f ( a ) f ( b ) 0 f(a)f(b)0 f ( a ) f ( b ) 0 则在区间 [ a , b ] [a,b] [ a , b ] 内必有一根 x ∗ x^* x ∗ 。通

    2024年02月04日
    浏览(34)
  • 【剑指Offer】二分法例题

    链表是数据结构中重要的一个章节,他的重要性也不言而喻,在未来不管是笔试还是面试都会遇到这类的题目,所以接下来我就会把一些链表的常考的题目全部整理出来供大家学习指正。 题目链接 描述: 给定一个长度为n的数组nums,请你找到峰值并返回其索引。数组可能包

    2023年04月13日
    浏览(35)
  • 算法:二分法---寻找H指数

    1、题目: 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数 。 根据维基百科上 h 指数的定义: h 代表“高引用次数” ,一名科研人员的 h 指数 是指他(她)至少发表了 h 篇论文,并且每篇论文 至少 被引用

    2024年02月08日
    浏览(32)
  • 33. 搜索旋转排序数组(二分法)

    题目要求必须设计一个时间复杂度为  O(log n)  的算法解决此问题,所以我们可以采用二分法。 Step1. 先把 nums[0] 作为目标值,通过二分法找到旋转点索引; Step2. 如果旋转点索引为0,则数组本身就是升序的,否则思想上可以将数组一分为二,看做两个升序数组。 Step3. 判断

    2024年02月05日
    浏览(26)
  • 1241:二分法求函数的零点

    【题目描述】 有函数:f(x)=x5−15x4+85x3−225x2+274x−121 已知f(1.5)0,f(2.4)0 且方程f(x)=0在区间[1.5,2.41.5,2.4] 有且只有一个根,请用二分法求出该根。 【输入】 (无) 【输出】 该方程在区间[1.5,2.41.5,2.4]中的根。要求四舍五入到小数点后66位。 【输入样例】 【输出样例】 【AC代码】

    2024年01月25日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包