|
조성택 님이 쓰신 글 :
: if(a < 10 != a < 20) 라는뜻은 a가 10보다 작고,20보다 작고 또 무슨뜻인지??아리송~~
연산자 우선 순위(Precedence of Operators)에 따르면 다음과 같이 묶을 수 있습니다.
if ((a < 10) != (a < 20))
말로 풀어서 쓰자면, "'a가 10보다 작다'의 참/거짓과 'a가 20보다 작다'의 참/거짓이 같은가?"
라는 의미가 되겠군요.
이건 뭐, 수학/논리학 문제네요.
이해가 잘 안되신다면, 임의로 적당한 값을 대입해보면 됩니다.
a = 5 라면
(5 < 10) != (5 < 20)
true != true
이므로 거짓이군요.
a = 15 라면
(15 < 10) != (15 < 20)
false != true
이므로 참입니다.
a = 25 라면,
(25 < 20) != (25 < 20)
false != false
이므로 거짓이 되겠네요.
즉, 10 < a < 20 이면 참이라는 겁니다.
사실 실무에서는 이런식으로 헷갈리는 코드를 절대 작성하지 마시기 바랍니다.
위의 식을 그대로 나타내는 코드로 적으세요.
if (10 < a && a < 20)
이렇게 쓰는 것이 가장 알아 보기 쉽겠죠?
|