Post on 11-Jan-2017
Operadores y expresiones
Edisson Gutiérrez Jiménez
Universidad de Antioquia
Lógica y representación I
(Botero, 2007) “ Un dato es la representación formal de hechos,
conceptos o instrucciones, adecuada para su comunicación,
interpretación y procesamiento por seres humanos o medios
tecnológicos.
Un tipo de dato es la especificación de un dominio (rango de
valores) y de un conjunto válido de operacíones a los que
normalmente los traductores asocian un esquema de representación
propio. “
“Una variable se considera como un comportamiento de memoria
con una dirección y nombres únicos, cuyo contenido puede variar en
tiempo de ejecución del programa. Para efectos de procesamiento
de una variable, interesa conocer su nombre y no su dirección.”
(Botero, 2007) Botero, Ricardo. Castro, Carlos. Maya, Juan David y otros. Lógica y
Programación orientada a objetos: un enfoque basado en problemas. Divergraficas,
2007.
Tipos de datos y variables
Operadores
Operadores Aritméticos
Seudocódigo Significado Tipos de operandos Tipo de resultado
+ Suma Entero o real Entero o real
- Resta Entero o real Entero o real
* Multiplicación Entero o real Entero o real
/ División Entero o real Entero o real
mod Módulo (Residuo) Entero Entero
Operador módulo (mod)
• 15 mod 6 = 3
Operadores Relacionales
Seudocódigo Java Significado
< < Menor que
> > Mayor que
== == Igual que
≤, <= <= Menor o igual que
≥, >= >= Mayor o igual que
<> != Diferente de
Operadores Lógicos
Operador Expresión
lógica
Java Significado
NO (NOT) !p ! Negación de p
Y (AND) p & q && Conjunción de p y
q
O (OR) p | q || Disyunción de p y
q
p y q son proposiciones lógicas.
Una proposición lógica es un enunciado del cual se puede afirmar si es
verdadero o falso.
Tabla de Verdad
Es una tabla que muestra el valor de verdad de
una proposición compuesta, para cada
combinación de valores de verdad que se pueda
asignar a sus componentes.
Tablas de verdad para los operadores lógicos Y, O y NO
p q p & q
V V V
V F F
F V F
F F F
p q p | q
V V V
V F V
F V V
F F F
p ! p
V F
F V
Operador lógico Y Operador lógico O
Operador lógico NO
Si una proposición es falsa el valor de
verdad de la proposición compuesta con la Y
es falso.
Si una proposición es verdadera el valor de
verdad de la proposición compuesta con la
O es verdadero.
¿ Qué es la prioridad?
(Botero, 2007) “Hace referencia al orden en el
cuál se ejecuta un operador dentro de una
expresión. La prioridad se puede controlar con el
uso del agrupador parentesis en cuyo caso se
evalua primero su contenido.”
(Botero, 2007) Botero, Ricardo. Castro, Carlos. Maya, Juan David y otros. Lógica y
Programación orientada a objetos: un enfoque basado en problemas. Divergraficas,
2007.
Prioridad de Operadores
Operador Precedencia
() Más alta
^
-, no (unario)
*, /, mod
+, -
<, ≤, >, ≥
==, <>
y (&, &&)
o, (|, ||)
= (Asignación) Más baja
Indica el orden en que se deben efectuar las operaciones en un expresión
aritmética o lógica.
Asociación
Cuando en una expresión existen operadores
con igual precedencia, se evalúan de izquierda a
derecha.
Expresión
• Combinación válida de valores, variables,constantes, operadores, paréntesis yfunciones.
• Se divide en aritméticas y lógicas.
• Las expresiones aritméticas evalúan a valoresnuméricos.
• Las expresiones lógicas evalúan a valoreslógicos.
Ejemplo 1: Evaluar la expresión
aritmética 2 + 3 * 9 + 4 * 2 – 7 * 4 / 2
2 + 3 * 9 + 4 * 2 – 7 * 4 / 2
2 + 27 + 4 * 2 – 7 * 4 / 2
2 + 27 + 8 – 7 * 4 / 2
2 + 27 + 8 – 28 / 2
2 + 27 + 8 – 14
29 + 8 – 14
37 – 14
23
Ejemplo 2: Evaluar la expresión lógica
4 + 2 < 7 & 5 == 10 / 2
4 + 2 < 7 & 5 == 10 / 2
4 + 2 < 7 & 5 == 5
6 < 7 & 5 == 5
V & 5 == 5
V & V
V
V = verdadero
EjerciciosHacer los siguientes algoritmos:
• Defina una variable de tipo entero, boolean y float. Luego asignele un valor
válido y muestre el resultado por pantalla.
• Muestre por pantalla el texto “este es el resultado de sumar 8 y 5” y el
resultado correspondiente.
• Muestre por pantalla el resultado de la siguiente expresión
• 6 más 4 menos 6 módulo 3.
• Sume dos números que son ingresados por el usuario.
• Multiplique dos números que son ingresados por el usuario.
• Muestre por pantalla el resultado de 5 > 3.
Ejercicios• Muestre el resultado de:
Comparar si 7 módulo 5 es menor que 9
• Mostrar el resultado al comparar si dos números ingresados por el
usuario son iguales.
• Revise la prioridad de los operadores en Java, antes de codificar la
siguiente expresión hagalo a mano, recuerde que el elemento
principal en la algoritmia es su capacidad de análisis.
• 5 – 8 * 7 / 6 * 3 % 3
• (5 + 3 % 2) * 2
• (3%2/5) + 5-3*2