matlab中varargin 里面写入数组怎样调用数来呢?
例如一个函数functiona=unknown(varargin),这是我在command窗口输入unknown([1,2],[3,4],[5,6])...如果我要在函数...
例如一个函数 function a= unknown(varargin),这是我在command 窗口输入unknown([1,2],[3,4],[5,6])...如果我要在函数中取[3,4]中的4,赋值给另外一个变量s。具体的语句是怎么写得呢?
展开
1个回答
展开全部
function qiujuli(varargin)%求素数
%%%%使用方法:qiujuli([2 3]),qiujuli([2 3],[4 5]),
%%%%输入三个点或多个点时的处理方法一样,可以自己看着办
if nargin==0
disp('未输入,请至少输入一点坐标值')
end
if nargin==1
x1=varargin{1};
d=sum(x1.^2)^0.5;
disp('输入只有一点,则求其距原点距离为:')
disp(['距离d=' num2str(d)])
end
if nargin==2
x1=varargin{1};
x2=varargin{2};
x=x1-x2;
d=sum(x.^2)^0.5;
disp('输入有两点,则求这两点距离为:')
disp(['距离d=' num2str(d)])
end
end
这是我以前自己编的一个程序,你可以看一下,跟你的情况很类似
%%%%使用方法:qiujuli([2 3]),qiujuli([2 3],[4 5]),
%%%%输入三个点或多个点时的处理方法一样,可以自己看着办
if nargin==0
disp('未输入,请至少输入一点坐标值')
end
if nargin==1
x1=varargin{1};
d=sum(x1.^2)^0.5;
disp('输入只有一点,则求其距原点距离为:')
disp(['距离d=' num2str(d)])
end
if nargin==2
x1=varargin{1};
x2=varargin{2};
x=x1-x2;
d=sum(x.^2)^0.5;
disp('输入有两点,则求这两点距离为:')
disp(['距离d=' num2str(d)])
end
end
这是我以前自己编的一个程序,你可以看一下,跟你的情况很类似
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询