Tutoriales de informática - Abrirllave.com

Abrirllave.com

Expresiones lógicas en Pseudocódigo

En programación, de la evaluación de una expresión lógica siempre se obtiene un valor de tipo lógico (Verdadero o Falso). En las expresiones lógicas se pueden utilizar dos tipos de operadores: relacionales y lógicos.

Operadores relacionales

Un operador relacional se utiliza para comparar los valores de dos expresiones. Estas deben ser del mismo tipo (aritméticas, lógicas, de carácter o de cadena).

EJEMPLO Algunos ejemplos son:

49 > 25 (comparación de dos expresiones aritméticas)

13.5 < 2.12 (comparación de dos expresiones aritméticas)

Verdadero = Falso (comparación de dos expresiones lógicas)

'e' >' 'i' (comparación de dos expresiones de carácter)

"box" = "Box" (comparación de dos expresiones de cadena)

Proporcionan los valores:

Verdadero (49 es mayor que 25)

Falso (13.5 no es menor que 2.12)

Falso (Verdadero no es igual que Falso)

Falso ('e' no es mayor que 'i')

Falso ("box" no es igual que "Box")

Las comparaciones entre los valores de tipo numérico son obvias.

En lo que respecta a los valores de tipo carácter, su orden viene dado por el ASCII extendido utilizado por el ordenador para representarlos. ASCII (American Standard Code for Information Interchange) es el Código Estándar Americano para el Intercambio de Información. Y en el caso de los valores de tipo cadena, también se tiene en cuenta dicho código.

Los operadores relacionales son:

< Menor que
<= Menor o igual que
> Mayor que
>= Mayor o igual que

= Igual que
<> Distinto que (!=)

Para escribir una expresión relacional (lógica) se utiliza la sintaxis:

<expresión_1> <operador_de_relación> <expresión_2>

Siendo <expresión_1> y <expresión_2> del mismo tipo (aritmética, lógica, de carácter o de cadena).

EJEMPLO La comparación entre valores de tipo cadena se realiza carácter a carácter:

"a" = "b" (se compara "a" con "b")

"bc" <> "kd" (se compara "b" con "k" y "c" con "d")

"126" < "9" (se compara "1" con "9")

"ab" <= "ab" (se compara "a" con "a" y "b" con "b")

"abb" >= "abc" (se compara "a" con "a", "b" con "b" y "b" con "c")

De estas expresiones se obtienen los valores:

Falso ("a" no es igual que "b")

Verdadero ("bc" es distinto que "kd")

Verdadero ("1" es menor que "9")

Verdadero ("ab" es menor o igual que "ab")

Falso ("abb" no es mayor o igual que "abc")

Operadores lógicos

Un operador lógico actúa, exclusivamente, sobre valores de expresiones lógicas. Los operadores lógicos son:

& Conjunción (Y)

| Disyunción (O)

! Negación (NO)

El operador conjunción (&) y el operador disyunción (|) siempre actúan sobre dos operandos, mientras que, el operador negación (!) solo actúa sobre un operando, o dicho de otra forma, es un operador monario.

El modo en que actúan los operadores lógicos se resume en las llamadas tablas de verdad, definidas por el matemático George Boole.

De la tabla de verdad del operador conjunción (&) se concluye que:

Verdadero & Verdadero = Verdadero

Verdadero & Falso = Falso

Falso & Verdadero = Falso

Falso & Falso = Falso

EJEMPLO Algunos ejemplos son:

5 > 3 & 4 > 2

5 > 3 & 1 > 2

5 = 3 & 4 >= 2

5 = 3 & 1 >= 2

Las expresiones anteriores se evalúan a:

Verdadero (5 > 3 es Verdadero y 4 > 2 es Verdadero)

Falso (5 > 3 es Verdadero y 1 > 2 es Falso)

Falso (5 = 3 es Falso y 4 >= 2 es Verdadero)

Falso (5 = 3 es Falso y 1 >= 2 es Falso)

De la tabla de verdad del operador disyunción (|) se desprende que:

Verdadero | Verdadero = Verdadero

Verdadero | Falso = Verdadero

Falso | Verdadero = Verdadero

Falso | Falso = Falso

EJEMPLO Algunos ejemplos son:

5 > 3 | 4 > 2

5 > 3 | 1 > 2

5 = 3 | 4 >= 2

5 = 3 | 1 >= 2

Las expresiones anteriores se evalúan a:

Verdadero (5 > 3 es Verdadero y 4 > 2 es Verdadero)

Verdadero (5 > 3 es Verdadero y 1 > 2 es Falso)

Verdadero (5 = 3 es Falso y 4 >= 2 es Verdadero)

Falso (5 = 3 es Falso y 1 >= 2 es Falso)

De la tabla de verdad del operador negación (!) se deduce que:

! Verdadero = Falso

! Falso = Verdadero

EJEMPLO De las expresiones:

! ( 5 > 3 )

! ( 1 > 2 )

Los resultados de evaluarlas son:

Falso (5 > 3 es Verdadero)

Verdadero (1 > 2 es Falso)