Not enough input arguments from a row vector

2 次查看(过去 30 天)
My code is to find the roots of a quadratic using a row vector as the input. The function is called using myquad([3 4 5]) and I keep getting the error that i dont have enough input arguments. I am VERY new to matlab so please explain your answer like you're talking to a bump on a log.
function x = myquad(a,b,c)
if b^2 - 4*a*c > 0
x = 2;
else if b^2 - 4*a*c == 0
x = 1;
else
x = 0;
end
end

采纳的回答

Torsten
Torsten 2022-4-4
编辑:Torsten 2022-4-4
function x = myquad(vec)
a = vec(1);
b = vec(2);
c = vec(3);
if b^2 - 4*a*c > 0
x = 2;
else if b^2 - 4*a*c == 0
x = 1;
else
x = 0;
end
end
Since you pass a vector and not three scalars, you must take it as a vector in myquad and split it in its components.

更多回答(1 个)

Fangjun Jiang
Fangjun Jiang 2022-4-4
myquad(3,4,5)

类别

Help CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by