How do I use a single or double pipe (vertical line) in an "or" statement?

40 vues (au cours des 30 derniers jours)
Sabbas
Sabbas le 2 Juil 2012
I have the following code
if k==39 or K==90
do that
else
do that
end
My question is how to replace the or statement
With | or with the double vertical line

Réponse acceptée

Luffy
Luffy le 2 Juil 2012
if k==39 || K==90
do that
else
do that
end

Plus de réponses (1)

Daniel Shub
Daniel Shub le 2 Juil 2012
There are two main differences between | and . The first difference is that "short circuits", while | does not. This means that you can save yourself 1 comparison every time the if statement is evaluated. Assuming equal over head for | and , this means you can save some computation time. How much time you save depends on what proportion of the time your code spends checking for k equal to 39 takes. The second difference is that is a relatively new addition to MATLAB. I cannot easily find when they were introduced ( Loren's blog uses them in 2006). If you want your code to work with older versions of MATLAB, you cannot use .
Since I doubt that k==90 will be the bottle neck in your code, I would go with | for backwards compatibility.
  2 commentaires
Jan
Jan le 2 Juil 2012
Modifié(e) : Jan le 2 Juil 2012
|| works at least since Matlab 6.5.
Sabbas
Sabbas le 2 Juil 2012
Modifié(e) : Sabbas le 2 Juil 2012
So the bottom line is that i can still use the double vertical line ?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Contour Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by