Está en la página 1de 3

Operadores Lógicos

Este tipo de operadores permite obtener solo dos resultados, por lo que se conocen también como booleanos, porque
hacen uso de los principios del álgebra de Boole. Los resultados son Verdadero o Falso. La sintáxis especifica una
serie de reglas de construcción que deberán cumplir las fórmulas para ser sintácticamente correctas. Los elementos
que estudiaremos en una fórmula, en lógica proposicional son:

 Símbolos: p, q, r...

 Operadores: negación, conjunción, disyunción, condicinal, disyunción exclusiva

 Paréntesis: ( )

Las reglas de construcción sintácticas son:

 Un símbolo sólo no es una fórmula

 Los operadores unarios se anteponen al símbolo. Los operadores binarios se sitúan entre los símbolos.

 Los paréntesis han de estar bien formados, y ha de haber tantos paréntesis de abertura como de cierre: 

o Son correctos: (p), p and (q), p or ((not q) and r)...

o No son correctos: (), (p (or) q), p and (q or (not r)...

 Son fórmulas:

o p, not p, p and q, p xor (not q), not (p -> q)...

Hemos hablado de operadores unarios y binarios. Los primeros afectan sólo a un símbolo o fórmula, en cambio los
segundos afectan a los 2 símbolos o fórmulas que haya a su izquierda y derecha.

Una fórmula es cualquier combinación de elementos que cumplan las reglas sintácticas. Por ejemplo, si tengo un
símbolo p: "hace frío". La fórmula not p equivale a "no hace frío".

De los símbolos no hay nada más que decir, son letras minúsculas del alfabeto. En cuanto a los operadores lógicos,
no vamos a verlos todos, sólo los necesarios para comprender la lógica que después aplicaremos a la programación.
Cada operador está representado por un símbolo:

Operadores Aritméticos
Los operadores aritméticos son aquellos que "manipulan" datos numéricos, tanto enteros como reales. Hay 2 tipos de
operadores aritméticos: unarios y binarios. Los operadores unarios se anteponen a la expresión aritmética, y son los
operadores de signo. Los operadores binarios se sitúan entre 2 expresiones aritméticas.

Operadores aritméticos unarios

Por ejemplo, -4 es el resultado de aplicar el operador unario - al entero 4, devolviendo otro número enterio.

Operadores aritméticos binarios

Todos los operadores binarios admiten expresiones enteras y reales a excepción de div y mod, que sólo admiten
expresiones enteras, por lo que devuelven expresiones enteras. En el caso de los otros operadores, si los 2 operandos
a los que afecta son enteros, la expresión resultante será entera, pero si alguno o ambos son reales, la expresión
resultado es de tipo real. En esto tenemos de nuevo otra excepción: el operador / devuelve siempre expresiones de
tipo real.

El operador aritmético + también se puede usar con datos de tipo string. El resultado es la concatenación de las
cadenas. Por ejemplo:

'Esto' + 'es una' + 'concatenación de' + 'cadenas'

Como todos sabréis, cualquier número dividido por 0 da como resultado infinito. Esto se puede aceptar desde el
punto de vista abstracto de las matemáticas, pero si probáis esto en un lenguaje de programación, el compilador os
avisará de un error que viene a decir que la división por 0 no está permitida. Por lo tanto, el segundo argumento de
los operadores /, div y mod no debe ser 0.

Como última aclaración, el operador mod devuelve el resto de realizar la división del primer operando por el
segundo. Es decir, 6 mod 3 = 0 y 5 mod 2 = 1.

Operadores Relacionales
Los operadores relacionales nos permiten comparar expresiones de tipos compatibles, devolviendo
un resultado de tipo lógico: la comparación es verdadera o falsa. Por ejemplo, la expresión (3 + 4) >
12 sería falsa, ya que 7 es menor que 12.

La estructura de una operación relacional sería la siguiente:

expresión_1 operador_relacional expresión_2

Operadores relacionales

Los operadores de relación se pueden aplicar a cualquiera de los tipos que hemos visto hasta ahora:

 entero

 real

 lógico

 caracter y cadena

Las operaciones relacionales o de comparación entre números reales y enteros no merecen mayor
comentario, las matemáticas dictan las reglas. Si comparamos expresiones lógicas, lo cual no tiene
mucho sentido, hay que saber que el valor falso se considera menor que el valor verdadero. Las
comparaciones entre caracteres o cadenas se basan en el código ASCII de cada caracter. Por
ejemplo, el código ASCII de la letra a es 97, y el de la letra A es 65, luego si las comparamos,
tendríamos que 'a' > 'A'.

El operador in se utiliza en unas estructuras llamadas conjuntos que veremos en el próximo


capítulo.

Tipos compatibles en operaciones relacionales

También podría gustarte