반응형
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <iostream> using namespace std; int main(){ // 키와 시력을 보관할 변수 정의 int height; float eyesight; height = 175; eyesight = 0.8f; // 조건이 만족하는지 검사 bool ok; // 자격을 갖춘 사람인가? ok = height >= 160 && height <= 180 || eyesight >= 1.0f && eyesight <= 2.0f; return 0; } | cs |
&& 연산자가 || 연산자보다 우선 순위가 높기 때문에 14~15번째 줄은 다음과 같은 의미를 가진다.
ok = (height >= 160 && height < = 180) || (eyesight >= 1.0f && eyesight <= 2.0f);
해석하자면 "키가 160 이상 180 이하이거나 시력이 1.0 이상 2.0 이하인 경우"이다.
반대 조건인 "키가 160보다 작거나 180보다 크고 시력이 1.0보다 낮거나 2.0보다 높은 경우"로 코드를 적자면
ok = (height <= 160 || height >= 180) && (eyesight <= 1.0f || eyesight >= 2.0f);
반대에 경우에는 괄호가 반드시 필요하다. 안하고 컴파일하게되면 아예 다른 결과가 나와버린다.
반응형
'공부 > 개발노트' 카테고리의 다른 글
[C/C++] 비트 단위 논리 연산자의 사용 (0) | 2016.08.16 |
---|---|
[C/C++] 비트 단위 연산자 (0) | 2016.08.16 |
[C/C++] 논리 연산자(AND) 사용 (0) | 2016.08.13 |
[C/C++] 관계 연산자 사용해보기 (0) | 2016.08.13 |
[C/C++] 대입 연산자의 사용 (0) | 2016.08.13 |