2013-06-24 2 views
0

다음 두 개의 부울 값 표가 있습니다.C# - 2 개의 변수가있는 논리 연산자 - if 문을 피하기 위해 연산자 결합

왼쪽에서 오른쪽으로 한 행을 호출합니다.

a  b  result 
------------------------ 
false false false 
false true false 
true  false false 
true  true true 

이제 이러한 모든 결과가 발생하도록 코드를 작성해야합니다.

if 문, 스위치 명령 및 논리 연산자를 사용하여 문제를 해결할 수 있습니다.

논리 연산자의 단일 힙합 복합 표현식을 만들 수 있습니까?

뭔가 같은 :

(a^b)||(a&&b)&(a??b) 
이 ..

또한 질문 (유 난 후 무엇을 이해할 수 있도록이, OBV 단지 예입니다) :

소프트웨어가 있습니까 (2 개의 변수에 대해) 여러 개의 무작위로 정렬 된 부울 문을 생성 할 수 있습니까?

이러한 소프트웨어의 제한은 무엇입니까? (행 수/문 수는 논리 연산자로 구성된 표현식으로 사용할 수있는 가능한 솔루션 수에 어떤 영향을 미칩니 까?)

답변

0

항상 부울 변수 및 상태 수를 모두 canonical form으로 해결할 수 있습니다. 그러나 2 개의 변수에 대해서만 가능한 16 개의 결과가있는 조회 테이블을 유지하고 필요에 따라 사용하는 것이 더 쉽습니다.

+0

미안하지만, 나는 실례하고 싶지 않다.하지만 나는 그 문제를 제대로 이해하지 못했다. 정규식으로 표현식을 찾고 있습니다. (감사합니다). 위의 표에서 이러한 4 가지 상태를 한 번의 조회로 찾습니다. 또한 그렇게 할 수있는 표준 형식은 몇 가지가 될 수 있습니다. 어떤 소프트웨어가 있습니까? –

+0

2 변수 표현식에 대해 16의 표에있는 특정 진리표와 일치하는 항목은'a && b'를 포함합니다. –

+0

안녕하세요. 노력해 주셔서 감사합니다.하지만 아직 답변이 만족스럽지 않습니다. –