Matlab用二分法求方程3*ln(x)-x=0在区间[4,5]上面的一个根

 我来答
kuxingseng1999
2018-12-29 · TA获得超过698个赞
知道小有建树答主
回答量:334
采纳率:86%
帮助的人:172万
展开全部

function p = biSection(f,a,b)

% 函数功能:用二分法求解

% 函数输入:f 为待求解函数

%          a b,为待求解区间的两个端点值

% 函数输出:近似解p

% 举例说明:

%    f = @(x)(3*log(x)-x);a = 4;b = 5;

%    biSection(f,a,b)

if f(a)*f(b)>0

disp('请重新选择区间!');

else

p= (a + b)/2;

fp = f(p);

err = abs(fp);

while err > 1e-6     % 设定误差范围

if f(a)*fp<0

b = p;

else

a = p;

end

p= (a + b)/2;

fp = f(p);

err = abs(fp);

end

end

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式