Operands to the || and && operators

8 views (last 30 days)
Maria hassan
Maria hassan on 7 Dec 2016
Answered: Steven Lord on 7 Dec 2016
Hi,
I am getting this massage: Operands to the and && operators must be convertible to logical scalar values.
Error in main (line 27) elseif model==2 model==3
what does this mean please regards

Answers (1)

Steven Lord
Steven Lord on 7 Dec 2016
In the expression X && Y or X || Y, X and Y must both be scalar (as defined by isscalar, meaning the values have size [1 1]) and the commands logical(X) and (if necessary) logical(Y) must succeed.
Cases that will not work:
% X is not scalar
[1 2] && 1
[] && 1
% X cannot be converted to a logical
NaN && 5
Cases that will work:
% Both scalar, both convertible to logical
1 && 0
true && true
% X causes the comparison to short-circuit so Y is not checked
false && [1 2] % false AND anything is false
true || NaN % true OR anything is true

Community Treasure Hunt

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

Start Hunting!