Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

I want to use fonction (find) to return many values,but why he just returns the least value ? thank you

2 vues (au cours des 30 derniers jours)
pengcheng
pengcheng le 1 Oct 2014
Clôturé : MATLAB Answer Bot le 20 Août 2021
d={ 'a12' ;'a15';'a16';'a14';'a13';'a11'}; H={ 'a11';'a13';'a12' ;'a15';'a16';'a14';'a13'} ; for i=1:1:7 c=find(strcmp(d,H(i)));
end

Réponses (1)

Julia
Julia le 1 Oct 2014
Hi,
c is overwritten in each loop iteration.
Define c as a matrix and you can store each result in a line of this matrix.
  3 commentaires
Julia
Julia le 1 Oct 2014
d={ 'a12' ;'a15';'a16';'a14';'a13';'a11'};
H={ 'a11';'a13';'a12' ;'a15';'a16';'a14';'a13'} ;
c=zeros(7,1);
for i=1:1:7
c(i)=find(strcmp(d,H(i)));
end
c =
6
5
1
2
3
4
5
pengcheng
pengcheng le 1 Oct 2014
thank you very much,you are right,I think I must be confused by (),[],{}

Cette question est clôturée.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by