我正在尝试在MATLAB中的IF语句中使用逻辑OR。其中TRI
是32x2向量,我想检查TRI
中的某一行是否包含28或31,如果是,则执行某些操作。
我无法弄清楚为什么这很困难,包含逻辑的行目前是:
if (TRI(i,:)==28 || TRI(i,:)==31);
答案 0 :(得分:3)
好的,你想要像
这样的东西if any(TRI(i,:)==28) || any(TRI(i,:)==31)
您的原始代码无效,因为您正在将向量TRI(i,:)
与标量进行比较。执行vector==scalar
将为您提供一个向量,其中每个元素都是带有标量的==
的结果。由于您要查找连续的单个匹配项,any
会告诉您==
对于向量的任何元素是否为真。希望有意义!