Simple for and if loop got wrong...

1 view (last 30 days)
buer
buer on 11 Dec 2014
Commented: buer on 11 Dec 2014
Hi,
My mind looks like got some water...I just can not figure out what is wrong with this.
for i=1:100,
if(((data_cell{i,1})<= time)&&((data_cell{i+1,1})> time))
[row,col]=find(data_cell{i,1});
end
end
I just want to find the value point, where data{i,1}is samller than time, and data {i+1,1}is bigger than time... but the result always gives the last value until i is 100... It should find the value and stop the loop...anyone please give some idea...
Thanks.

Accepted Answer

Guillaume
Guillaume on 11 Dec 2014
You appear to be very confused indeed about the usage of find. Assuming that data_cell{:, 1} and time are scalar, and assuming that data_cell{:, 1} is monotonically increasing
data_col1 = cell2mat(data_cell(:, 1));
thresholdpoint = find(data_col1 > time, 1);
  1 Comment
buer
buer on 11 Dec 2014
Thanks so much Guillaume, it works..I will check again find function....:D

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!