Not enough input arguments from a row vector

1 回表示 (過去 30 日間)
Eric Brown
Eric Brown 2022 年 4 月 4 日
編集済み: Torsten 2022 年 4 月 4 日
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 Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by