a function that has two inputs: a number and a row vector

The code i am tryin to make requires that there be only two inputs, the first a number and the second as a row vector. How do I do that? I have tried looking online and even in my textbook but i cant find anything.
I should calarify, when calling the function the command window should read My_func(1,[18 11 22 48]).
What I have in my .m file is function y = My_func(a,b,c,d,e), I believe this is where I am having a lack of knowlege.

2 件のコメント

Torsten
Torsten 2022 年 4 月 9 日
function y = My_func(a,bcde)
b = bcde(1);
c = bcde(2);
d = bcde(3);
e = bcde(4);
end
Eric Brown
Eric Brown 2022 年 4 月 9 日
God bless you.

サインインしてコメントする。

回答 (2 件)

Torsten
Torsten 2022 年 4 月 9 日
編集済み: Torsten 2022 年 4 月 9 日

0 投票

scalar = 6.0;
vector = [3 5 8];
output = input(scalar,vector)
function output = input(scalar,vector)
output = scalar*vector;
end
KSSV
KSSV 2022 年 4 月 9 日

0 投票

function val = myfun(a,b)
if numel(a) ~= 1 | size(b,1) ~=1
error('check the inputs') ;
end
% Do what you want
end

1 件のコメント

Steven Lord
Steven Lord 2022 年 4 月 9 日
Instead of using numel and size here, I recommend using isscalar and isrow or isvector (depending on whether you care about the orientation or just whether or not the input is a vector.)

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeResizing and Reshaping Matrices についてさらに検索

タグ

質問済み:

2022 年 4 月 9 日

コメント済み:

2022 年 4 月 9 日

Community Treasure Hunt

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

Start Hunting!

Translated by