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

3 views (last 30 days)
Maheen on 28 Apr 2015
Commented: Maheen on 1 May 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.

Guillaume on 28 Apr 2015
Edited: Guillaume on 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.
Ahmet Cecen on 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 on 1 May 2015
Thank you So much Guillaume, resolved my problem.

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