Inflearn Community Q&A
No author
This post's author information has been deleted.
3.6 논리연산자 25:30초에 4번째 문제 관련하여 질문드립니다.
Written on
·
314
1
if ((14 > 13 || 2 > 1) && (9 > 1 ))에 대해 출력을 해봤습니다.
저는 14>13은 false이고 2>1은 false이기 때문에 (14 > 13 || 2 > 1) 부분이 false가 돼서 정답은 false가 출력 될 것이라고 생각했습니다.
그런데 정답은 true로 출력이 됩니다. 왜 이런지 알고 싶습니다!
c++
Quiz
연산자 우선순위 및 결합 법칙에 대한 설명으로 옳은 것은 무엇일까요?
덧셈과 뺄셈이 곱셈, 나눗셈보다 항상 먼저 계산됩니다.
동일한 우선순위의 연산자는 항상 오른쪽에서 왼쪽으로 계산됩니다.
괄호를 사용하면 연산자 우선순위를 무시하고 먼저 계산할 수 있습니다.
논리 AND 연산자는 논리 OR 연산자보다 우선순위가 낮습니다.
Answer 1
1
안녕하세요, 답변 도우미 Soobak 입니다.
관계 연산자에 대해서 혼동하고 계신 것 같습니다.
관계 연산자 중 > 는 좌항이 우항보다 큰지에 대한 논리값을 반환합니다.
즉, 좌항이 우항보다 크다면 true 를, 좌항이 우항보다 작거나 같다면 false 를 반환합니다.
따라서, 14 > 13 은 참이며, 2 > 1 과 9 > 1 또한 참입니다.
이를 바탕으로 논리 연산자 || 와 && 를 적용해보면,(14 > 13 || 2 > 1) && (9 > 1) 은 참이 됩니다.





