matlab - 在Matlab中用二分法求解方程
问题描述
我想创建一个使用二分法求解方程的函数,但我得到的只是错误的答案:
%declaire function
function c=dichotomie(f,a,b,n)
fa=f(a);
fb=f(b);
error=abs(fa-fb);
while(error<n )
if(fb==0)
c=fb;
elseif(fa==0)
c=fa;
break;
elseif(fa<0)
fb=f(c);
elseif(fb<0)
fa=f(c);
end
c=(a+b)/2;
error=abs(fa-fb);
end
end
%call the function
syms x
f=inline('x+1');
m=-1;s=3;l=0.1;
D=dichotomie(f,m,s,l);
D
解决方案
推荐阅读
- haskell - Map.lookup 被定义为在任何 monad 中工作
- c# - 有没有办法拆分数组中的每个字符串并每次检索第 5 位,加到总数中?
- python - 用于 Python 3 但不是 Python 2 (Mac OSX) 的 Jupyter Notebook 中的 ModuleNotFoundError
- python - 在熊猫中按月绘制图表
- ios - Swift 扩展和 NumberFormatters 的问题
- python-3.x - 浏览一列并在其中更改
- reactjs - 是的,条件验证 - 何时
- animation - 在 Julia 中用动画可视化微分方程的解
- c# - 如何在 C# 中获取 PSObject.Properties 的 ScriptProperty 值?
- javascript - 如何根据文本值显示不同的图标