2010年5月30日 星期日

Excel-AND、OR和XOR的真值表

在Excel的工作表中,試著建立四個變數的AND運算的真值表,如下表:

儲存格E2:=AND(A2,B2,C2,D2) [向下複製公式]

利用Excel提供的AND函數。

如果真值表中的 TRUE 以 T 表示;而 FALSE 以 F 表示,則公式改為:

儲存格K2:=IF(AND(G2="T",H2="T",I2="T",J2="T"),"T","F") [向下複製公式]

如果不用AND函數,可以使用「*」來代替AND運算,如下公式:

儲存格L2:=IF((G2="T")*(H2="T")*(I2="T")*(J2="T"),"T","F") [向下複製公式]

如果以AND的原理,變數中只要有1個為FALSE,結果必為FALSE,公式可改為:

儲存格M2:=IF(COUNTIF(G2:J2,"F")>0,"F","T") [向下複製公式]

如果將 F 以 0 表示;將 T 以 1 表示,,公式可改為:

儲存格S2:=IF(AND(O2=1,P2=1,Q2=1,R2=1),1,0) [向下複製公式]

儲存格T2:=IF((O2=1)*(P2=1)*(Q2=1)*(R2=1),1,0) [向下複製公式]

儲存格U2:=IF(COUNTIF(O2:R2,0)>0,0,1) [向下複製公式]

若是要建OR的真值表呢?以四個變數來說明:

儲存格E2:=OR(A2,B2,C2,D2) [向下複製公式]

利用Excel提供的OR函數。

如果真值表中的 TRUE 以 T 表示;而 FALSE 以 F 表示,則公式改為:

儲存格K2:=IF(OR(G2="T",H2="T",I2="T",J2="T"),"T","F") [向下複製公式]

如果不用OR函數,可以使用「+」來代替AND運算,如下公式:

儲存格L2:=IF((G2="T")+(H2="T")+(I2="T")+(J2="T"),"T","F") [向下複製公式]

如果以AND的原理,變數中只要有1個為TRUE,結果必為TRUE,公式可改為:

儲存格M2:=IF(COUNTIF(G2:J2,"T")>0,"T","F") [向下複製公式]

如果將 F 以 0 表示;將 T 以 1 表示,,公式可改為:

儲存格S2:=IF(OR(O2=1,P2=1,Q2=1,R2=1),1,0) [向下複製公式]

儲存格T2:=IF((O2=1)+(P2=1)+(Q2=1)+(R2=1),1,0) [向下複製公式]

儲存格U2:=IF(COUNTIF(O2:R2,1)>0,1,0) [向下複製公式]

如果要建立四個變數的XOR真值表呢?因為Excel中沒有提供XOR函數,所以只好利用其原理:只要有奇數個TRUE,則結果為TRUE(若有偶數個TRUE,則結果為FALSE)。

儲存格E2:=IF(ISODD(COUNTIF(A2:D2,TRUE)),TRUE,FALSE) [向下複製公式]

利用COUNTIF函數計算TRUE的數量,使用ISODD函數判斷這個數量是否為奇數。

儲存格K2:=IF(ISODD(COUNTIF(G2:J2,"T")),"T","F") [向下複製公式]

儲存格Q2:=IF(ISODD(COUNTIF(M2:P2,1)),1,0) [向下複製公式]

沒有留言:

張貼留言

好康東東