nargin函数的用法

简介:   nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用他来设定一些默认值,如下面的函数。 函数文件examp.m:function fout=charray(a,b,c)if nargin==1fout=a;else  if  nargin==2fout=...

  nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用他来设定一些默认值,如下面的函数。

函数文件examp.m:
function fout=charray(a,b,c)
if nargin==1
fout=a;
else  if  nargin==2
fout=a+b;
else  if  nargin==3
fout=(a*b*c)/2;
end


命令文件mydemo.m:
x=[1:3];y=[1;2;3];
examp(x)
examp(x,y')
examp(x,y,3)


执行mydemo.m 后的输出是:
ans =
  1 2 3
ans =
  2 4 6
ans =
  21

 

例子,函数test1的功能是输出a和b的和。如果只输入一个变量,则认为另一个变量为0,如果两个变量都没有输入,则默认两者均为0。

function y=test1(a,b)
if nargin==0
a=0;b=0;
elseif nargin==1
b=0;
end
y=a+b;

 

function x=maiter(phi,x0,ep,N)
%x=chat3_ex3maiter(inline('x-(x-exp(-x))/(1+x)'),0.5,1e-5,400)
if nargin<4,N=500;                                                                      end
if nargin<3,ep=1e4;                                                                        end
k=0;
while k<N
x=f(phi,x0);
if abs(x-x0)<ep
break;
end
x0=x;k=k+1;
end
if k==N,warning('已达迭代次数上限');                                                            end
disp(['k=',num2str(k)])

这是一个迭代求方程解的Matlab程序,请问if nargin<4,N=500;end和if nargin<3,ep=1e4;end这两个语句在这个程序中起什么作用?

NARGIN表示输入变量的个数,程序中的意思是如果输入参数小于4个,则N默认为500,如果输入参数小于3个,默认输入参数EP=1E4

这就是说输入的变量式4各的时候是那样运行,输入变量式3各式运行以后的程序

 

相关文章
|
6月前
|
安全 Java 容器
FilterChain用法总结
FilterChain用法总结
|
7月前
strtol()函数与strtoul()函数的用法
strtol()函数与strtoul()函数的用法
74 0
|
测试技术 API
harfbuzz 的用法
HarfBuzz 整形 API 的核心是函数。此函数采用一种字体,即 包含一串 Unicode 代码点的缓冲区和 (可选)字体功能列表作为其输入。它取代了 缓冲区中的代码点,其中包含来自 字体,正确排序和定位,以及任何 应用的可选字体功能。hb_shape()
472 0
mailto用法详解
mailto用法详解
535 0
mailto用法详解
propertyIsEnumerable的用法
propertyIsEnumerable用法 语法和功能 obj.propertyIsEnumerable(prop): 判断prop属性是否是obj的可枚举属性
183 0
|
Java
Systrace的用法小结
通过SysTrace可以帮助我们分析性能问题,包含方法的耗时时长、CPU的使用情况、ANR、布局情况等;相比性能工具TraceView,主要用来分析每个方法的执行时间,对于冷启动而言,想抓trace只能通过代码的方式,这样会导致整个应用比较卡顿,测试出的方法时间,不是真正的执行时间,只能看下时间长短的相对占比。
3500 0