필터 지우기
필터 지우기

IF / ELSE Usage within For loop for Specific Iteration Only

조회 수: 5 (최근 30일)
Sam
Sam 2014년 2월 8일
댓글: Jos (10584) 2014년 2월 10일
When using a FOR LOOP can I do something like when
for i=1:1:15
When i iterates at 9, 10, 12 & 14 ONLY do an additional condition. Is it possible? Can i maybe add in an IF Condition? Would be good if i can sum up al the 4 possibilities within this 1 IF Statement. Thanks!

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2014년 2월 8일
for i=1:1:15
if ismember(i,[9 10 12 14])
% do
end

추가 답변 (2개)

Jos (10584)
Jos (10584) 2014년 2월 9일
As a follow-up, if you only need to perform the statements within a for-loop when the iterator takes specific values, you can change the expression used in the for loop.
for k = 1:10
if ismember(k, [2 5 8])
% statements here
end
end
equals
for k = [2 5 8]
% statements here
end
This neat feature of MatLabs for-loop is easily overlooked ...
  댓글 수: 2
Azzi Abdelmalek
Azzi Abdelmalek 2014년 2월 9일
Jos, I don't think that's what Sam asked for. He needs to do a for loop for i=1:15, but he wants to add some lines of code for specific values of i
Jos (10584)
Jos (10584) 2014년 2월 10일
Yep, I know, (and that's why I posted it as a follow-up). It just serves to illustrate ML functionality when there are NO statements within the for-loop but outside the if-ismember section ...

댓글을 달려면 로그인하십시오.


dpb
dpb 2014년 2월 8일
iskp=[9 10 12 14];
j=1;
for i=1:15
if i==iskp(j) && j<=length(iskp)
j=j+1;
% do whatever else here
end
% rest here (or ahead of if if order-dependent)
...
If you can derive the condition for iskp values then you can have any other manner of generating the test as desired.
Also check out
doc switch
doc case
and friends as alternative structures that may be helpful
  댓글 수: 1
Sam
Sam 2014년 2월 9일
hi dpb! thanks for your answer i agree with it as well but i had went with the earlier one since it was simpler as i have a few functions i am calling for this segment of my work and i would prefer a simpler code so it will be easier to troubleshoot later..
Cheers...

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by