I can not create a matrix

Z =[150.0276305609584
55.1225122601673
251.4164611561661
344.9623210277200
20.7924313051007
150.0276305609584
55.1225122601673
251.4164611561661
344.9623210277200
20.7924313051007]
YON_BLNM =[27
32
34
39
133]
BNdog =[34
133
32
27
133
39
39
133
27
32
133
34
27
34
39
32]
for i = 1:length(YON_BLNM)
Zi{i} = Z(BNdog==YON_BLNM(i),1);
end
I have to make 16 angles But I am having problems in the loop.

Réponses (2)

Seyedali Mirjalili
Seyedali Mirjalili le 31 Mar 2017

0 votes

Please note that curly brace ({i}) makes a cell array and not a matrix. You have to use square brackets instead: []
So:
for i = 1:length(YON_BLNM)
Zi[i] = Z(BNdog==YON_BLNM(i),1);
end

2 commentaires

Muhendisleksi
Muhendisleksi le 31 Mar 2017
"Error: File: dogrultu_kenar_hesabi.m Line: 302 Column: 7 Unbalanced or unexpected parenthesis or bracket."
This error occurs
Jan
Jan le 31 Mar 2017
Modifié(e) : Jan le 31 Mar 2017
@Muhendisleksi: This is a typo, obviously. Use Zi(i) instead with round parenthesis. Square brackets are the concatenation operator, see http://www.mathworks.com/matlabcentral/answers/35676-why-not-use-square-brackets .

Connectez-vous pour commenter.

Andrei Bobrov
Andrei Bobrov le 31 Mar 2017

0 votes

Maybe so?
[~,ii] = ismember(BNdog,YON_BLNM)
Zi = Z(ii);

2 commentaires

Muhendisleksi
Muhendisleksi le 1 Avr 2017
Modifié(e) : Muhendisleksi le 1 Avr 2017
"BNdog", "YON_BLNM", "ri" and "Z" are constantly changing. Do not we have a chance to write more dynamic?
Muhendisleksi
Muhendisleksi le 6 Avr 2017
Is not that possible?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by