找到值所属的范围

时间:2016-06-07 13:07:11

标签: matlab

如果我有一个列数组

A = [2; 4; 6; 8]

并说我有一个值

X = 3

[编辑] 我想确定它所属范围的值。在这种情况下,我们知道它在2到4之间,因此结果是2和4.

然而,问题在于X未知。我的意思是它必须在模拟过程中计算,然后才能识别出范围(也在模拟过程中)。

任何人都可以建议我如何编码吗?最好是以矢量方式,没有循环,因为我将处理更大的数组。

1 个答案:

答案 0 :(得分:3)

一个非常简单的代码行:

interval=find(diff(X<A))

让我重新解释一下您的问题,使其更接近代码:您正在寻找X<A(interval)不为真的索引(下限间隔),但下一个元素X<A(interval+1)也是如此。