If statement for identifying row/column vectors/matrix/scalars

39 visualizaciones (últimos 30 días)
Joseph DeMaria
Joseph DeMaria el 3 de Nov. de 2020
Comentada: Joseph DeMaria el 3 de Nov. de 2020
The question I am trying to solve, is how to create a function that recognizes the input given as either a colum vector, row vector, matrix, or scalar, depending on which category the input falls under it will execute simple arithmetic, that I can do. I have to create a function, myvec(x) that
the simple arithmetic I can execute, however, Im not sure how to type the if statements for the conditions the question prompts, for example, for the first condition how would I type
function y=myvec(x)
if y=rowvec? [1:n]? [1,n]?
or what is the correct way to do this, thank you

Respuestas (1)

Sudhakar Shinde
Sudhakar Shinde el 3 de Nov. de 2020
Editada: Sudhakar Shinde el 3 de Nov. de 2020
'isrow' function returns true if input is row vector.
isrow(in)
'iscolumn' function returns true if input is column vector.
iscolumn(in)
'ismatrix' function returns true if input is matrix.
ismatrix(in)
'isscalar' function returns true if input is scalar.
isscalar(in)
  2 comentarios
Sudhakar Shinde
Sudhakar Shinde el 3 de Nov. de 2020
example below
function y=myvec(x)
if isrow(x) %Check if row vector
ReveresRow = sort(x,'descend'); %Reverse elements
y = ReveresRow.^2; %Square
end
end
you can add else if conditions for column vector, matrix or scalar
Joseph DeMaria
Joseph DeMaria el 3 de Nov. de 2020
Awesome this is helping so much! Appreciate your guys help so much, so far for my functions code I have
function y=myvec(x)
if isrow(x)
flip(x)
y=x.^2
if iscolumn(x)
y=vec-.5
if ismatrix(x)
y=(x*(x')).^2
if isscalar(x)
y=x
end
end
end
end
end
is this right for such conditions the question prompts?

Iniciar sesión para comentar.

Categorías

Más información sobre Matrices and Arrays en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by