Simple for and if loop got wrong...

1 次查看(过去 30 天)
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.

采纳的回答

Guillaume
Guillaume 2014-12-11
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 个评论
buer
buer 2014-12-11
Thanks so much Guillaume, it works..I will check again find function....:D

请先登录,再进行评论。

更多回答(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