matlab算法之二分法

    科技2025-10-28  8

    function x=nabisect(fname,a,b,e) if nargin<4,e=le-4;end %如果输入参数《4个 e=le-4 fa=feval(fname,a);%带入端点值后a1,2…的值 fb=feval(fname,b);%同上 if fafb>0,error(“函数在两端必须异号”);end %判断 x=(a+b)/2; %中点值 while (b-a)>(2e) %误差小于精度时 下面为二分迭代 fx=feval(fname,x); if fa*fx<0,b=x;fb=fx; else a=x;fa=fx;end x=(a+b)/2; disp(x) end

    Processed: 0.011, SQL: 8