I want to compare three logics should I used && or || or any other way to do that ?????

2 views (last 30 days)
I want to compare three logics should I used && or or any other way to do that ?????
  5 Comments
Adam
Adam on 23 Feb 2017
Tags are meant to give useful keywords related to the problem so people with the right expertise can find them quickly.

Sign in to comment.

Accepted Answer

Jan
Jan on 20 Feb 2017
Edited: Jan on 20 Feb 2017
The | operator acts like or(), while || requires scalar arguments:
a = 1
b = 0
A = false(1, 4);
B = true(1, 4);
or(a, b) % correct
a | b % correct, but this is faster:
a || b % correct and efficient
A || B % fail
or(A, B) % correct
A | B % correct
The same for &&. The || and && operator apply a short-curcuiting: If the first operand determines the output alread like in 0&&1, the second is not evaluated. This matters, if the operands are functions:
str = 'asd';
if length(str > 3) && str(4) == 'f' % Handles 'asd' correctly!
  1 Comment
shane watson
shane watson on 23 Feb 2017
Edited: shane watson on 23 Feb 2017
Thank you, Jan Simon. I was confused in problem as you have mentioned in 2nd example that what if I have three comparisons instead of two i.e for example(str > 3) && str(4)==f and also any third one so again I have to use &&||

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!