How Does This Short Code Work?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Rightia Rollmann
il 11 Mar 2017
Modificato: Stephen23
il 12 Mar 2017
How is D calculated? Could you explain the steps that MATLAB takes to calculate D?
Is it only for logical values or can be extended to a wider range?
Is there any link to learn more about it?
A = [1; 1; 0; 0; 0; 0; 1];
C = {'w','b'};
D = C(1+A)
D =
'b' 'b' 'w' 'w' 'w' 'w' 'b'
1 Commento
Risposta accettata
Star Strider
il 11 Mar 2017
The ‘A’ matrix is a double precision numeric array, not a logical array. Your ‘C’ cell has 2 elements, 'w' and 'b' so ‘C(1)='w'’, and ‘C(2)='b'’. MATLAB indexing begins at 1, not 0, so it is necessary to add 1 to ‘A’ to correctly address the elements of ‘C’.
It can be extended, providing that either no element of ‘A’ is greater that 1, or that you add an appropriate number of elements to ‘C’ to allow for elements of ‘A’ that are greater than 1.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Matrix Indexing in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!