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

조회 수: 37 (최근 30일)
Joseph DeMaria
Joseph DeMaria 2020년 11월 3일
댓글: Joseph DeMaria 2020년 11월 3일
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

답변 (1개)

Sudhakar Shinde
Sudhakar Shinde 2020년 11월 3일
편집: Sudhakar Shinde 2020년 11월 3일
'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
Sudhakar Shinde
Sudhakar Shinde 2020년 11월 3일
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 2020년 11월 3일
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?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by