Noip中的逻辑表达式计算(初赛必考)

1. A=B=D=trueC=false,以下逻辑运算表达式值为真的有(          )。

A. (¬ AB)(CD)            B.¬ ((ABD)C)

C.   ¬ A(BCD)            D. (ABC) ¬ D

2.设A=B=TrueC=D=False,一下逻辑运算表达式值为假的有( )。

A(AB)(CDA) B.﹁(((AB)C)D)

CA(BCD)D D(A(DC))B

 

逻辑运算符

 运算符  运算    运算对象    结果类型    符号

not   逻辑非    布尔型     布尔型      ¬

and   逻辑与    布尔型     布尔型     

or    逻辑或    布尔型     布尔型     

xor   逻辑异或   布尔型     布尔型

 

运算法则:

操作数A boolean      运算符 not 表达式 not A

A

result

T

F

F

T

操作数A boolean B:Boolean    运算符 and 表达式 A and B (AB)

A

B

Result

T

T

T

T

F

F

F

T

F

F

F

F

And 只有两个都是真时结果才是真。

操作数A boolean B:Boolean    运算符 or 表达式 A or B (AB)

A

B

Result

T

T

T

T

F

T

F

T

T

F

F

F

or 只要有一个真时结果就是真。

 

 

 

xor

异或,二进制运算.可逆运算.1 xor 1=0, 0 xor 0=0, 1 xor 0=1, 0 xor 1=1.

  a xor b的运算方法:将a,b 转化为2进制数,再进行对比,每个数位上的0或1如果相同,那么结果就取0,如果不同就取1,将得到的结果转化为原来进制的数,就是结果.一句话:只有当两个不相等时才为真。

  在 oi中,常用于位运算

当逻辑运算的对象是数字时,应该先转化为2制数,在进行运算。1表示真,0表示假。

例如:

1、在Pascal语言中,表达式 23 or 2 xor 5)的值是( )。

A18 B1 C23 D32

2、在 Pascal 语言中,表达式 (21 xor 2)的值是(         

 A. 441        B. 42         C.23        D.24

 

posted on 2008-10-28 18:33  sandboy  阅读(1392)  评论(0)    收藏  举报