NOIP初赛复习(二)逻辑运算

注意运算符的级别比较。一般一题,分值1.5分。

概念介绍

非:not  ¬      与:and       或:or  ∨     异或:xor ⊕

运算级比较

括号  >  非  >  与  >  或、异或 (or和xor是同级的)

如果加入加减乘除,就是以下这样:

NOIP初赛复习(二)逻辑运算-少儿编程网

注意:同级的运算符不分高低,计算时按照从左到右运算。

例题1若A=True,B=False,C=True,D=False,以下逻辑运算表达式真的有( )。

A.(A∧B)∨(C∧D∨¬A) B.((¬A∧B)∨C)∧¬B

C.(B∨C∨D)∨D∧A       D.A∧(D∨¬C)∧B

题解:一个个算结果,比如A选项(AB)∨(CD¬A) ,根据运算级的比较,我们可以定下运算的顺序,然后按运算顺序计算结果。注意,这类题是有个小技巧的。比如A选项可以先看中间的,为什么呢?因为∨的左右有一边是真就行,可以不去看另外一边

A选项的结果是:(A∧B)∨(C∧D∨¬A),(A∧B)=假,(C∧D∨¬A)中C∧D =假,¬A=假,所以(C∧D ∨¬A)=假。于是A选项可以简写为:假∨(假 ∨假)= 假。

B选项的结果是:((¬A∧B)∨C)∧¬B,如果¬B是假那么就可以不去看前面的((¬A∧B)∨C),可惜的是¬B是真,那么就要看((¬A∧B)∨C),发现C是真,所以不看(¬A∧B),于是B选项可以简写为:(?∨真)∧真=真。

C选项的结果是:(B∨C∨D)∨D∧A ,D∧A=假,所以不得不看前面部分(B∨C∨D),只要BCD有一个是真,那么(B∨C∨D)=真,而容易发现C=true。所以C选项可以简写为:真∨ 假 = 真。

D选项的结果是:A∧(D∨¬C)∧B,我们很容易发现D选项的特殊结构为 ?∧?∧?,三个?有一个是假,那么D为假,A和B不用计算便可看出,所以先发现B=假,所以D=假。

例题2计算23 +2 or 2 and 5 * 3 - 6 xor 5=(  )。

题解:数字也有逻辑运算,当然也可以混合加减乘除。

这里举例说明运算的操作:

NOIP初赛复习(二)逻辑运算-少儿编程网


每日练习

计算下列逻辑表达式:

1、P∨¬P  = (  )

2、A=True,B=False,C=True,D=False,A∧B∨C∧D = (  )

3、A=True,B=False,C=True,D=False,A∧B∨C∧D ∨¬A  = (  )

4、23 +2 or (2 and 5 * 3 - 6) xor 5   = (  )

5、2 and 7 xor 8 and 15 ÷ 3 + 6 xor 5  =(  )

6、(23 + 13 or 11) and 5 * (19 - 6 xor 5)  =(  )


往年真题

1. 以下逻辑表达式的值恒为真的是( )

A.P∨(¬P∧Q)∨(¬P∧¬Q)

B.Q∨(¬P∧Q)∨(P∧¬Q)

C.P∨Q∨(P∧¬Q)∨(¬P∧Q)

D.P∨¬Q∨(P∧¬Q)∨(¬P∧¬Q)

2. 若A=True,B=False,C=True,D=False,以下逻辑运算表达式真的有(  )

A.(A∧B)∨(C∧D∨¬A)    B.((¬A∧B)∨C)∧¬B

C.(B∨C∨D)∨D∧A         D.A∧(D∨¬C)∧B

3. 设A=true,B=false,C=true,D=false,以下逻辑运算表达式值为真的是(  )

A. (A∧B)∨(C∧D∨A)           B. ((A∧B)∨C)∧D

C. (B∨C∨D)∧D∧A               D. A∧(D∨C)∧B

4. 当(A>=B) and (B>=C)的取值为true时,那么表达式(A>C) or (B=C)的取值为(  )

A. True     B. False     C. 无法判断

D. 只有当ABC三个数都为正数时才为true

E. 只有当ABC三个数都为正数时才为false

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

A. 18     B. 1     C. 23     D. 32     E. 24

6. 在Pascal语言中, 判断整数a等于0或b等于0或c等于0的正确的条件表达式是( )

A. not((a<>0) or (b<>0) or (c<>0))

B. not ((a<>0) and (b<>0)and (c<>0))

C. not((a=0) and (b=0) and (c=0))

D.(a=0) and (b=0) and (c=0)

E. not((a=0) or (b=0) or (c=0))

7. 设A=B=true,C=D=false,以下逻辑运算表达式为真的有(  )

A.  (A∧B)∨(C∧D∨A)           B. ((A∧B)∨C)∧D

C.  A∧(B∨C∨D)∨D             D.  A∧(D∨C)∧B

8. 命题“P→Q”可读做P蕴涵Q,其中P、Q是两个独立的命题。只有当命题P成立而命题Q不成立时,命题“P→Q”的值为false,其他情况均为true。与命题“P→Q”等价的逻辑关系式是(  )

A. P∨Q        B.  P∧Q         C. (P∨Q)       D.  (Q∧P)

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

A.(¬A∧B)∨(C∧D∨A)  B.¬(((A∧B)∨C)∧D)

C.A∧(B∨C∨D)∨D       D.(A∧(D∨C))∧B

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

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

11. 在Pascal语言中,判断a不等于0且b不等于0的正确的条件表达式是(  )

A. not a=0 or not b=0     B. not((a=0)and(b=0))     C.not(a=0 and b=0)

D. (a<>0)or(b<>0)         E. (a<>0)and (b<>0)

12. 设A=B=D=true,C=E=false,以下逻辑运算表达式值为真的有(  )

A. (A∧B)∨(C∧D)∨E        B. (((A∧B)∨C)∧D∧E)

C. A∧(B∨C∨D∨E)          D. (A∧(B∨C)) ∧D∧E

13. 设全集I = {a, b, c, d, e, f, g, h},集合  BA = {a, b, c,d, e, f},AC  = {c, d, e},BA= {a, d},那么集合  CBA为(  )

A.{c, e}      B. {d, e}      C. {e}      D. {c, d, e}    E. {d, f}

14. 设全集I = {a, b, c, d, e, f, g},集合A = {a, b, c},B = {b, d, e},C = {e, f, g},那么集合为( )

A. {a, b, c, d}    B. {a, b, d, e}   C. {b, d, e}     D. {b, c, d, e}    E. {d, f, g}


逻辑运算往年真题参考答案:

1.A 2.BC 3.B 4.A 5.A 6.B 7.AC

8.AD 9.D 10.C 11.E 12.AC 13.A 14.A

本文链接:NOIP初赛复习(二)逻辑运算

转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:少儿编程网,谢谢!^^


*文章为作者独立观点,不代表少儿编程网立场
发表评论

2 条评论
  • 沙发 yzz 

    第3题答案不是b吗?

    • 儿童编程
      儿童编程 

      答案应该是A

相关文章
NOIP少年丨黄子桉:不骄不躁不傲慢不强求
NOIP少年丨黄子桉:不骄不躁不傲慢不强求
为什么越来越多家长选择信息学竞赛?
为什么越来越多家长选择信息学竞赛?
孩子学完各个阶段的编程课程能够参加哪些比赛?
孩子学完各个阶段的编程课程能够参加哪…
信息学竞赛必经之路–NOIP(内含2018报名方式说明)
信息学竞赛必经之路–NOIP(内含20…
我的孩子从来没有接触过编程,0基础能不能学?
我的孩子从来没有接触过编程,0基础能不…
新手想参加信息学竞赛NOIP ,如何入门进阶?
新手想参加信息学竞赛NOIP ,如何入门进…
NOIP2017 作者
NOI官网发布了2017年全国青少年信息学奥林匹克联赛(NOIP2017)的报名通知。NOIP2017将于2017年10月及11月分别举行初赛和复赛,有意向参加比赛的考生,即日起至10月10日可报名。