2012-10-17 3 views
2

for 루프에서 for 루프의 마지막 결과 만 유지할 수 있습니다. for 루프가 끝날 때마다 데이터를 저장하고 싶습니다. 모든 변수가 if 문을 만족하는 없습니다 때문에 for 루프의 인덱스를 넣을 수 없습니다 : 내 코드는 다음과 같습니다if 문에서 for 루프 내 데이터를 저장하는 방법

c=[1 3 2 3 3];p=[0 0 1 2 1];level2=[1 3]; 
for j=1:length(level2) 
    for i=1:length(p) 
     a=[p(i),c(i)]'; 
     if a(1,:)==level2(j) 
      level3=a(2) 
     else 
     end 
    end 
end 

그래서, 어떻게 루프에 대한 모든 결과에 대한 벡터로 level3을 만들 수 있습니까? p, clevel2은 동적 값이어야하지만 여기서는 예제를 훨씬 쉽게 만들기 위해 정적입니다.

답변

0

당신은

c=[1 3 2 3 3];p=[0 0 1 2 1];level2=[1 3]; 
level3=[]; 
for j=1:length(level2) 
    for i=1:length(p) 
     a=[p(i),c(i)]'; 
     if a(1,:)==level2(j) 
      level3=[level3, a(2)]; 
     else 
     end 
    end 
end 

일예로, 당신은 현재 벡터의 끝에 반복의 결과를 추가합니다 다음 시도 할 수 있습니다.

+0

훌륭한 사운드! merci :) – Gloria

+0

아주 좋은 작품 .. – Gloria