Not Enough Input Arguments

1 view (last 30 days)
Karina Lopez Zamora
Karina Lopez Zamora on 2 Mar 2021
Commented: Walter Roberson on 2 Mar 2021
Anyone knows how I can fix a 'not enough input arguments' error? I have the code below, and it points to my if statement. Thanl you!
function C = first(x,y)
if (x >= 0 && y >= 0)
C = x + y;
elseif ((x >= 0) && (y < 0))
C = x + y.^2;
elseif ((x < 0) && (y >= 0))
C = x.^2 + y;
elseif ((x < 0) && (y < 0))
C = x.^2 + y.^2;
end
end

Answers (1)

Steven Lord
Steven Lord on 2 Mar 2021
Your function can be called with at most two inputs, and since it uses both inputs on the line you called out it must be called with at least two inputs. So you need to call it with exactly two inputs.
  2 Comments
Karina Lopez Zamora
Karina Lopez Zamora on 2 Mar 2021
So function C(x,y) = first(x,y) or when I assigned C to the expressions above?
Sorry, I'm still learning MATLAB.
Walter Roberson
Walter Roberson on 2 Mar 2021
xin = randn()
xin = -1.6940
yin = randn()
yin = -0.3612
output = first(xin, yin)
output = 3.0003
function C = first(x,y)
if (x >= 0 && y >= 0)
C = x + y;
elseif ((x >= 0) && (y < 0))
C = x + y.^2;
elseif ((x < 0) && (y >= 0))
C = x.^2 + y;
elseif ((x < 0) && (y < 0))
C = x.^2 + y.^2;
end
end

Sign in to comment.

Categories

Find more on Multidimensional Arrays 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!