2011-08-14 6 views

답변

4

예 : 대부분의 프로그래밍 언어에서

A and B or C and D 

, and (이 각각 *+-andor의 등가에서 유래) or보다 더 높은 우선 순위를 가지고 촬영됩니다.

(A or B) and (C or D) 

단순히 괄호를 제거 할 수 없습니다 : 원래 표현이 있었다면 물론

.

A and C or B and C or A and D or B and D 
+0

대부분의 프로그래밍 언어에서 그렇습니다. 불행히도 나는/OR와 결합 할 수있는 필터가있는 프로그램을 고수했다. 내 질문에 표시된 것과 같이 논리 연산과 연결된 4 가지 조건을 시도 할 때 프로그램에서 "선형"을 적용하고 첫 번째를 적용한 다음 두 번째 결과를 적용하는 것처럼 보입니다. 따라서 예를 들어 A = TRUE, B = TRUE, C = FALSE, D = FALSE 인 경우 TRUE를 반환하고 싶지만 FALSE를 반환하는 항목을 표시하지 않습니다. . – Dan737

+0

프로그램을 차례로 적용하여 프로그램을 시작하면 의미가 있습니다. A = TRUE, B = TRUE, C = FALSE, D = FALSE라고 가정 해 봅시다. 그런 다음 중간 결과는 다음과 같습니다. 1. TRUE 및 TRUE = TRUE 2. TRUE 또는 FALSE = TRUE 3. TRUE 및 FALSE = FALSE가 최종 결과입니다. – Dan737

+0

'대부분의 프로그래밍 언어에서 '라는 단어에 대한 수정을 추가하고 싶습니다. 논리적 AND는 오버로드를 지원하는 언어에서만 더 높은 우선 순위를가집니다 (이는 Java, C 및 Wiki 당 C++를 포함하지 않습니다). 내가 틀렸다면 나를 바로 잡아주세요. –

1

어떻게 A AND B OR C AND D에 대해 :이 경우, 당신은 요인 "증식"해야 할 것? ANDOR보다 우선하므로 동일합니다.

0

그냥 괄호를 넣지 마십시오. 동일합니다 ...