2011-09-13 9 views
1
CaptchaIsExist CaptchaIsValid = Result 
-------------- -------------  -------- 
    true    false  = false 

    Any other variations    = true 

これらの結果を得るためのロジックを書く方法は?シンプルに見えますが、十分ではないと思います。特定のブール論理に必要なヘルプ

+0

結果=!(CaptchaIsExist &&(!CaptchaIsValid)); –

答えて

4

@Binary心配性の代わりに溶液:

bool Result = CaptchaIsValid OR NOT CaptchaIsExist 

これは論理をより自然に表現すると思います。つまり、読んだときに意図した論理を伝えると思います。

+1

+1これははるかに読みやすい1ライナーです。 –

+0

'CaptchaIsValid = true'と' CaptchaIsExist = false'のときは 'true'になりませんか、何か不足していますか? –

+0

キャプチャが存在しない場合、その妥当性のテストが失敗することがあります。言語が短絡評価を使用していると仮定すると、テスト順序を逆にするほうが良いと思います。 –

1

いいえ、それは本当に簡単です。

bool Result = not (CaptchaIsExist and not CaptchaIsValid) 
2

だけfalseのための条件を指定してそれにnotを適用する... C-のような擬似コードで

not (CaptchaIsExist && not (CaptchaIsValid)) 
+1

+1は、結果を導出するために使用された方法を説明する。 – Heinzi

1
(not CaptchaIsExist) or CaptchaIsValid 
0

if (CaptchaIsExist && !CaptchaIsValid) then 
    return false; 
else 
    return true; 
0
Boolean result = ((CaptchaIsExist && !CaptchaIsValid)) ? false: true; 
関連する問題