문제

나는 IF 문을 연구하고 있으며 루프를 무시하기 위해 두 가지 조건을 만족시키고 싶습니다. 이것은 처음에는 쉬운 것처럼 보였지만 지금은 ... 모르겠습니다. 이것은 내 딜레마입니다 ...

if((radButton1.checked == false)&&(radButton2.checked == false))
{
    txtTitle.Text = "go to work";
}

Radbutton1이 False이고 Radbutton2가 사실 인 경우 딜레마는 "작업"이 실행되지 않습니다. 진술을 건너 뛰기 위해 두 조건이 모두 거짓이어야하지 않아야합니까?

도움이 되었습니까?

해결책

아니요, 둘 다 허위가 필요합니다. 실행하다 진술.

다른 팁

아니, 두 조건이 모두 거짓이어야합니다. 실행하다 진술. 다시 읽으세요:

if ((radButton1.checked == false) && (radButton2.checked == false)) {
    txtTitle.Text = "Go to work";
}

영어에서 : "Radbutton1.Checked가 False이고 Radbutton2. Checked가 False 인 경우 txtTitle.text를 '작업하기'로 설정하십시오."

두 조건이 모두 거짓일 때 명세서를 건너 뛰려면 다음과 같이 논리를 무효화하십시오.

if ((radButton1.checked == true) || (radButton2.checked == true)) {
    txtTitle.Text = "Go to work";
}

영어로 번역 된 것은 다음과 같이 읽습니다. 이것은 어떤 조건이라도 사실이라면, 진술을 실행하거나 둘 다 거짓이면 건너 뛰기 위해 진술을 실행한다는 것을 의미합니다.

두 가지 변수가 이름이 있다고 가정 해 봅시다 A 그리고 B

A와 B에 이러한 값이있는 경우

A     true    true    false   false
B     true    false   true    false

그런 다음 이러한 작업이 반환됩니다

AND   true    false   false   false
OR    true    true    true    false
XOR   false   true    true    false
NAND  false   true    true    true
NOR   false   false   false   true
XNOR  true    false   false   true

두 번째 테이블의 하단 3은 같은 테이블에서 상단 3의 논리적 반대 (즉, 적용되지 않은)입니다.

true (또는 false)와 비교하는 것은 전적으로 불필요합니다.

if(!((radButton1.checked == true)&&(radButton2.checked == true))) { ... }

becomes

if( !(radButton1.checked && radButton2.checked) ) { ... }

또는 똑같이

if( !radButton1.checked || !radButton2.checked ) { ... }

당신의 예에서는 단지 실행됩니다 txtTitle.Text ="go to work" 두 버튼이 모두 false 인 경우 코드. 따라서 하나는 사실이고 하나는 거짓이므로 진술을 건너 뛸 것입니다.

아니요. 해당 진술 중 하나가 거짓이어야합니다. if를보십시오 :

if (condition1 && condition2) {
    doSomething();
}

따라서 Condition1 또는 Condition2가 사실이 아닌 경우 실행되지 않습니다.

나는 그것을 일하기 위해 그것을 얻었다. 나는 그들이 진술을 실행하기 위해 둘 다 거짓이어야한다는 것을 알았습니다. 그 진술에 대해 두 조건을 만족시키는 방법은 사용하는 것입니다.

if(!((radButton1.checked == true)&&(radButton2.checked == true)))
{
    ...
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top