布尔运算(逻辑运算)

 

要判断“ A>B”是否成立,其结果不是一个具体的数值,而是“真”或“假”,即“是”或“否”的问题。这类问题在我们日常生活中是很多的,诸如这类判断的问题,其结果都是只有两个:真或假,这就是我们所说的布尔运算(逻辑运算)。

 

  • 布尔常量和布尔变量

布尔型的常量或变量的值只有两个: TRUE(真)和 FALSE(假)。要把一个变量定义成布尔类型,用的数据类型是: BOOLEAN。例如程序:

var a,b:boolean;

begin

a:=true;

b:=false;

……

end.

 

  • 布尔表达式

布尔表达式有以下两种操作:

  • 关系运算符: =; <>; >; <; >=; <=,是用来进行关系操作(对比)运算的符号,其结果为 BOOLEAN型。如: 2=3,其结果为 FALSE。 *注意:这里的“ =”与赋值符号“: =”是完全不同的,其作用和结果均不同。
  • 逻辑运算符: AND(逻辑和); OR(逻辑或); NOT(逻辑非)。是用来进行逻辑值的

逻辑运算的。如:( 2=3) AND ( 4<>3),值为 FALSE。

布尔表达式的运算顺序是:() à函数 à NOT à *,/.DIV,MOD,AND,+,-,OR à >,<,>=,<=,<>,= 。

布尔表达式中的逻辑运算如下表所示: a和 b 均为布尔型表达式或常 /变量 .

a

b

A and b

A or b

Not a

Not b

true

false

false

true

false

True

true

true

true

true

false

False

false

true

false

true

true

False

false

false

false

false

true

True

由上可以看出:

  • 用 AND运算时,左右两个值同为 TRUE时,运算结果才为 TRUE,即两个条件同时满足,结果才为 TRUE。这就是我们平常所说的“和”。
  • 用 OR运算时,左右两个值只需有一个为 TRUE,运算结果就为 TRUE,即两个条件满足其中一个,结果就为 TRUE。这就是我们平常所说的“或”。
  • 用 NOT运算时,只是把其后的逻辑值取反,即“非”。
  • 例: [例 4、 1]

Program q41;

Var a,b,c,d:integer;

P:boolean;

Begin

A:=1;

B:=2;

C:=3;

D:=4;

P:=(a=b);

Writeln(p);

P:=((a<b) and (c<d));

Writeln(p);

Writeln((a>d) or (c>b));

End.

 

说明四个整数型变量

说明一个布尔型变量

程序开始

赋值

赋值

赋值

赋值

把( A=B)这个逻辑运算的结果赋给 P,即 P的值为 FALSE

打印 P

把 ((a<b) and (c<d))这个逻辑运算的结果赋给 P

打印 P

打印 (a>d) or (c>b)这个逻辑运算的结果

程序结束

程序运行结果是:

false

true

true

由上可以看出:逻辑运算中的关系运算均用括号“()”括起来。关系运算 /逻辑运算的结果也是一个值( BOOLEAN型),所有布尔运算也是表达式,可以赋给一个变量,也可以直接用输出语句输出。打印输出时,屏幕上就显示“ false”或“ true”。

posted on 2008-10-29 15:48  sandboy  阅读(676)  评论(0)    收藏  举报