帮忙看看matlab二分法程序哪里出错了?

问题描述:

帮忙看看matlab二分法程序哪里出错了?
报错是:Error in erfenfa (line 6)
ya=f(a);
Output argument "c" (and maybe others) not assigned during call to "D:\Program
Files\MATLAB\R2011b\bin\erfenfa.m>erfenfa".
function [c,delta]=erfenfa(f,a,b,error)
%function [c,delta]=erfenfa(f,a,b,error)
%a,b是求根区间左右端点,要求a0
disp('请重新选择求根区间')
return
end
max1=1+round(log(b-a)-log(error)/log(2));
for k=1:max1
c=(a+b)/2;
yc=feval(f,c);
if yc==0
a=c;
b=c;
else
if yb*yc>0
b=c;
yb=yc;
else
a=c;
ya=yc;
end
if b-a
1个回答 分类:综合 2014-09-30

问题解答:

我来补答
% f是要求根的函数,f=inline('','');
ya=f(a)
可能输入的f不能用f(a)求函数值,换成feval(f,a);试试
 
 
展开全文阅读
剩余:2000
上一页:pass..
下一页:复合函数求值域