请问下面Matlab定义函数中if nargin==0,x=0:.05:1;end有什么用? 后面2个if作用是什么
function[out1,out2]=hump(x)ifnargin==0,x=0:.05:1;endy=1./((x-.3).^2+.1)+1./((x-.9).^2...
function[out1,out2]=hump(x)
if nargin==0,x=0:.05:1;end
y=1./((x-.3).^2+.1)+1./((x-.9).^2+.4)-6;
if nargout==2
out1=x;out2=y;
else
out1=y
end 展开
if nargin==0,x=0:.05:1;end
y=1./((x-.3).^2+.1)+1./((x-.9).^2+.4)-6;
if nargout==2
out1=x;out2=y;
else
out1=y
end 展开
1个回答
展开全部
nargin和nargout分别表示这个函数的输入和输出变量的个数。第一个if的意思:当输入变量个数为零时即没有输入,给输入变量x赋值x=0:.05:1。第二个if是:当输出变量个数为两个时,输入变量x的值赋给输出变量out1,计算的y值赋给输出变量out2,当输出变量为其他数时,只把计算的y值赋给out1。
追问
给输入变量x赋值x=0:.05:1.在这个函数定义中有什么用途呢?
追答
这个函数是做什么用的啊?
当没有输入变量x,本程序自动给函数y的自变量x赋初始值。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询