Рассмотрим следующий код|| операторы должны быть конвертированы в логические скалярные значения в случае пустого матрицы
t = ones(3,5)
Ind2save = find(t(1,:) == 0,1,'first')
Так, например, я пытаюсь найти, если даже первый нуль первого ряда, так что, если первый элемент является отличным от нуля, то
if(Ind2save ~= 1)
disp('no')
end
теперь для приведенного выше условия не показывать «нет», потому что условие не выполняется, а потому, что все строки заполнены и Ind2save
пустая матрица, поэтому мы еще одно условие, чтобы проверить если он полностью заполнен, то
if(Ind2save > 1 || isempty(Ind2save))
disp('no')
end
Я получаю следующую ошибку
Operands to the || and && operators must be convertible to logical scalar values.
Я искал причин, по которым вызывается эта ошибка и в большинстве случаев люди, сравнивающих два вектора так, лучше было заменить ||
с |
, но в моем случае условия никогда не являются векторами, но Ind2save > 1
возвращает пустую матрицу, кто-нибудь знает, почему причина этого? Как я могу приспособить оба условия?