Using function any with multiple conditions

4 Ansichten (letzte 30 Tage)
JR
JR am 11 Jul. 2017
Bearbeitet: Adam am 11 Jul. 2017
Say I have A= [5 11 10 8];
I want to check if
  1. there are any values greater than 9 but not less than 6
  2. there are any values less than 6 but not greater than 9
  3. the array contains values greater than 9 and less than 6
My code looks like this:
if any(A>9)
'do this';
elseif any (A<6);
'do that';
elseif any (A>6 && A<5)
'do this';
end
However, I am getting this error : Operands to the and && operators must be convertible to logical scalar values.
How do I fix
any (A>6 && A<5)
since its the one that is giving me errors. Also is it necessary to use the third
elseif

Antworten (1)

Adam
Adam am 11 Jul. 2017
Bearbeitet: Adam am 11 Jul. 2017
That specific error should be fixable just by replacing && with &
The condition itself will always return false though unless what you really want is
any( A > 6 | A < 5 )

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by