Azzera filtri
Azzera filtri

Difference between a<t<b and t>a && t<b

3 visualizzazioni (ultimi 30 giorni)
Maheen
Maheen il 28 Apr 2015
Commentato: Maheen il 1 Mag 2015
Hi I am trying to verify existence of even and odd harmonics in e^(-t) periodic with period pi. For that I try to verify f(t)=f(t+pi). and for f(t+pi) i try to add shift using if-else condition according to this link answer should have even harmonics, http://www.intmath.com/fourier-series/5-harmonic-analysis.php I am trying to solve Example 2(b) in Matlab.
Now if i use the condition 0<=t(i)<pi it shows me even harmonic but if i use 0>=t(i) && t(i)<pi it gives neither even nor odd.
So, my question is why isn't Matlab showing same result for both formats. and which format is correct.

Risposta accettata

Guillaume
Guillaume il 28 Apr 2015
Modificato: Guillaume il 28 Apr 2015
The first form is not going to give you the result you expect, it is equivalent to:
(0 <= t(i)) < pi
Thus, it will compare t(i) to 0, and the result is either 1 (true) or 0 (false). It then compares that 0 or 1 to pi, which is always smaller. Hence the result will always be true.
The second form is the correct one. You can't link comparisons. You have to perform them one at a time and link the results with logical operators.
  5 Commenti
Ahmet Cecen
Ahmet Cecen il 28 Apr 2015
Thankfully I found only one in a rotation code for visualization. Apparently I like to separate out the conditionals by default. Still many thanks for pointing this out, could have been a disaster. Would give more bumps if I could!
Maheen
Maheen il 1 Mag 2015
Thank you So much Guillaume, resolved my problem.

Accedi per commentare.

Più risposte (1)

Ahmet Cecen
Ahmet Cecen il 28 Apr 2015
might be because you are supposed to write:
*t(i)>=0 && t(i)<pi*
NOT:
*0>=t(i) && t(i)<pi*

Categorie

Scopri di più su Entering Commands in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by