if loop with multiple conditions
1 次查看(过去 30 天)
显示 更早的评论
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?
0 个评论
采纳的回答
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
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
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 Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!