Function with variable number of input arguments

Hey everyone,
I created a function called matrixmultiply, and I'm trying to define it for 2, 3, and 4 input arguments. How do I do this in one single script? I've heard "varargin" and "nargin" variables could work, but I don't know how to use those.
(I've defined it separately for 4 arguments already.)
Thanks!

 Accepted Answer

In your case you can just use nargin to know the number of inputs. Look at this example
function y=fcn10(a,b,c,d)
if nargin==2
y=a+b
elseif nargin==3
y=a*b*c
elseif nargin==4
y=(a+b)*(c+d)
end

1 Comment

ah ok great! thanks! I have a complete if..elseif..elseif...end loop for 4 arguments, so do i need to create separate if statements for 3 and 2 arguments, or can i simply continue nargin = 3 and margin in the original if statement for 4 variables?

Sign in to comment.

More Answers (0)

Categories

Find more on Argument Definitions in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!