Azzera filtri
Azzera filtri

Confusion in Addition: adding 1:4 to a matrix of 1X4 gives resultant matrix of 1X5

3 visualizzazioni (ultimi 30 giorni)
If A = [1 0;0 1] then how would 1:4 + A(:)' = 1 2 3 4 5

Risposta accettata

Guillaume
Guillaume il 31 Ago 2017
Because of operator precedence, + has more priority than :. Therefore your expression is equivalent to :
1 : (4 + A(:)')
which is
1 : ([5; 4; 4; 5])
Because of the colon rule, only the first element of a vector is considered, the above is thus equivalent to:
1 : 5
I suspect you may have wanted
(1:4) + A(:)'
which will result in a 1x4 vector pre-R2016b (or it may error, I can't remember) and in a 4x4 matrix in R2016b or later.

Più risposte (0)

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by