2017-12-04 9 views
0

이 질문은 문이 if 문을 어떻게 해석하는지 이해하는 것에 관한 것입니다. if(a)은 진실성이 a인지 확인합니다. 그러나NOT 연산자 if (! value)는 부울 대수/명제 논리에서와 동일하게 작동합니까?

, 우리는 같은 NOT 연산자를 사용하는 경우 :

if (!a) { 
    ... 
} 

그것은, 부울 대수에서 NOT 연산자로 즉

---------- 
| a | !a | 
---------- 
| T | F | 
| F | T | 
---------- 

을 동일하게 작동하고 여전히 진실성을 확인하거나 않습니다 성공 조건이 이제는 거짓으로 변경됩니까?

구현에 관계없이 똑같은 일이 발생하기 때문에 모든 경우에있어 중요하지 않습니다.하지만 문장/이해가 더 나은 경우 작성하는 것이 도움이 될 것이라고 생각합니다. 예를 들어

, 우리는 다음과 같은 if 문 보면 :

if (!(a && b))

및 진리표 :

---------------------------- 
| a | b | a & b | !(a & b) | 
---------------------------- 
| T | T | T |  F | 
| T | F | F |  T | 
| F | T | F |  T | 
| F | F | F |  T | 
---------------------------- 

우리는 조금 더 복잡하다고 볼 수있다 - 그렇다면 알고 나는 if 문의 적절한 기능이 나를 혼란에 빠뜨릴 수 있도록 진리표에 항상 의지 할 수있다.

추측하려고하면 성공 조건은 항상 true이고 NOT 연산자는 현재 값을 반전하여 부울 대수 NOT 연산자와 정확히 동일하게 작동한다고 상상해보십시오.

이 정보가 맞습니까?

감사합니다.

답변

0

논리적 NOT :

'!'연산자는 조건이 충족되지 않는 경우 조건을 true로 반환합니다. 그렇지 않은 경우는 false를 리턴합니다. 예를 들어

,

!A returns true if A is false, i.e. when A=0. 

는 항상 피연산자의 논리 상태를 역방향. 조건이 참이면, 논리 NOT 연산자는 조건을 거짓으로 만듭니다.