Проблема связана с тем, что <является двоичным оператором. </p>
Это означает, что один из <оценивается одновременно, а не оба. </p>
Что означает, что независимо от порядка, в котором они оцениваются (который, IIRC - от L до R), одно из сравнений будет неправильным.
Потому что это КОД.
НЕ АЛГЕБРА.
В противном случае, умное использование оператора &&, как описано в других ответах, быстро решит вашу проблему.