Why does can't I assign number greater than 1 to a matrix?

3 visualizzazioni (ultimi 30 giorni)
Why is value (2,2) of this matrix getting assigned to 1 instead of 9 in this console output? How can I make it take values greater than 1?
>> myMat = ~eye(3)
myMat =
0 1 1
1 0 1
1 1 0
>> myMat(2,2) = 9
myMat =
0 1 1
1 1 1
1 1 0

Risposta accettata

Paolo
Paolo il 22 Lug 2018
~eye(3) returns a logical array. You must convert it to double. Use:
logicalMat = ~eye(3);
myMat = double(logicalMat);
myMat(2,2) = 9;

Più risposte (0)

Categorie

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

Prodotti


Release

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by