필터 지우기
필터 지우기

if loop with multiple conditions

조회 수: 1 (최근 30일)
Megha
Megha 2018년 10월 25일
편집: madhan ravi 2018년 10월 25일
I have a matix 80x1. Now i want band of values to be executed:
The band is: 1-14, 29-33, 40-54, 69-73.
It should ignore all the values not included in the above band.
For this, I tried if-loop with the conditions like,
if k < 14 || k > 29 && k < 33 || k > 40 && k < 54|| k > 69 && k < 73
then...
end
However, this does not work. i mean, it works fine only upto k=33
Any help?

채택된 답변

madhan ravi
madhan ravi 2018년 10월 25일
편집: madhan ravi 2018년 10월 25일
k=1:80
idx = ( k >= 1 & k <= 14 | k >=29 & k <= 33 | k >= 69 & k <=73)
k(idx)=[]
  댓글 수: 3
madhan ravi
madhan ravi 2018년 10월 25일
see the above example it finds the index of the values that falls inside that band and in the next step those values are removed , which in this case is your desired result
madhan ravi
madhan ravi 2018년 10월 25일
편집: madhan ravi 2018년 10월 25일
What difference does that make?
& evaluates both conditions but && evaluates only if right hand side is true for detailed explanation see difference between & and &&
Loop is not necessary for this , smoother and efficient by this way though

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

추가 답변 (0개)

카테고리

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