MATLAB: How to use two logical operation inside a if condition

logical operations

I have three statements in a if condition and they are executed when the logical operations are true. For example I have two variables a and b, and their values are:
a=7;
b=5;
if a=7 && b=a || b<a
do something
end
Can someone please tell me what is the correct way to perform second operation (b=a | | b<a) first, and then do && operation between the result and the first statement (a=7)?

Best Answer

They are evaluated left-to right. See the documentation on Logical Operators: Short-Circuit && || (link) for a full discussion.
When in doubt, experiment to understand how the logic works:
a=7;
b=5;
L1 = a==7 && b==a || b<a
a=5;
b=5;
L2 = (b==a || b<a) && a==7
a=6;
b=5;
L3 = (b==a || b<a) && a==7
... and others as you want to study them.
Also, you need to use ‘double equals’ here:
if a==7 && b==a || b<a