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
matlab算法之二分法
最新推荐文章于 2024-08-15 13:19:53 发布