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

2 vues (au cours des 30 derniers jours)
I want to compare three logics should I used && or or any other way to do that ?????
  5 commentaires
Adam
Adam le 23 Fév 2017
Tags are meant to give useful keywords related to the problem so people with the right expertise can find them quickly.
shane watson
shane watson le 23 Fév 2017
Ok, Adam Thanks for the guidance.

Connectez-vous pour commenter.

Réponse acceptée

Jan
Jan le 20 Fév 2017
Modifié(e) : Jan le 20 Fév 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 commentaire
shane watson
shane watson le 23 Fév 2017
Modifié(e) : shane watson le 23 Fév 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 &&||

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by