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

68 Ansichten (letzte 30 Tage)
Joseph DeMaria
Joseph DeMaria am 3 Nov. 2020
Kommentiert: Joseph DeMaria am 3 Nov. 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

Antworten (1)

Sudhakar Shinde
Sudhakar Shinde am 3 Nov. 2020
Bearbeitet: Sudhakar Shinde am 3 Nov. 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 Kommentare
Sudhakar Shinde
Sudhakar Shinde am 3 Nov. 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 am 3 Nov. 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?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Shifting and Sorting Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by