24小时热门版块排行榜    

查看: 1146  |  回复: 1

hhai12357

金虫 (初入文坛)

[求助] matlab中为什么这个函数只能输出第一个参数?那位大神帮帮忙。

matlab中为什么这个函数只能输出第一个参数?那位大神帮帮忙。Sample Text
function [n,y]=HT(f,c,e)
%计算步长
y1=diff(f,2);
f1=@(x)eval(y1);
[~,fmin]=fminbnd(f1,c(1),c(2));
y1=diff(-f,2);
f1=@(x)eval(y1);
[~,fmax]=fminbnd(f1,c(1),c(2));
b=max(abs(fmin),abs(fmax));
n=ceil((b*(c(2)-c(1))^3/12/e)^0.5);
%进行计算
h=(c(2)-c(1))/n;
i=1:n+1;
x(i)=c(1)+(i-1)*h;
y=subs(f,c(1))+subs(f,c(2));
for i=2:n-1
    y=y+2*subs(f,x(i));
end
y=h/2*y;
问题补充:
把y放前面只输出y,n放前面只输出n。为什么会这样呢…………???
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

人不可能两次踏进同一条河流
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
hhai12357: 金币+5, 有帮助, 已经解决了还是谢了。结果发现,在命令窗口使用只能输出一个参数,在编辑窗口就没事了。 2012-12-14 17:02:46
xzhdty: 金币+1, 谢谢骠骑将军 2012-12-14 20:41:27
matlab可以返回任意个参数,只要你保证这些返回的参数在函数体中都被赋值
具体返回几个,跟调用方式有关,如果单返回参数调用,只返回第一个,例如
CODE:
[a,b,c,d,e] = test()
a = 1;
b = 2;
c = 3;
d = 4;
e = 5;
end

调用的时候,下面这样调用就能得到所有5个返回参数
CODE:
[a1,b1,c1,d1,e1] = test();

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-12-14 16:46:32
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 hhai12357 的主题更新
信息提示
请填处理意见