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 commentaires

function y = My_func(a,bcde)
b = bcde(1);
c = bcde(2);
d = bcde(3);
e = bcde(4);
end
God bless you.

Connectez-vous pour commenter.

Réponses (2)

Torsten
Torsten le 9 Avr 2022
Modifié(e) : Torsten le 9 Avr 2022
scalar = 6.0;
vector = [3 5 8];
output = input(scalar,vector)
function output = input(scalar,vector)
output = scalar*vector;
end
function val = myfun(a,b)
if numel(a) ~= 1 | size(b,1) ~=1
error('check the inputs') ;
end
% Do what you want
end

1 commentaire

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.)

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrices and Arrays dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by