%二分法
syms x;
fun=input('(输入函数形式)fun=');
a=input('(输入二分法下限)a='); b=input('(输入二分法上限)b=');%二分法求根
%f=inline(x^2-4*x+4);%修改需要求解的inline函数的函数体
f=inline(fun);%修改需要求解的inline函数的函数体
x05 e=b-a; k=0 ;
x05 while e>1*10^-6
x05 c=(a+b)/2;
x05 if f(a)*f(c)0
x05 a=c;
else
a=c;b=c
end
e=e/2; k=k+1;
end
x05 x=(a+b)/2; [x,k]
二分法的matlab的小程序 保存为M文件 可能有错 我试过从-5到5 根是-1.7081 次数是24次
上面的10的-6次是精度
不知道您觉得可以不?