Programación

Clase 4. Expresiones
Prof. Gonzalo Müller
gmullerb@mail.com

Facultad de Ingeniería Universidad Central de Venezuela

Clase Anterior
Combinación de Estructuras: Condicionales + Secuenciales, Repetitivas + Secuenciales, Condicional Compuestas: Anidadas y Cascadas, Estructura Repetitiva Anidadas. Algoritmos Propios. Constantes y Variables. Asignación: =. Usos de las Variables: Contadores y Acumuladores. Lista de Variables.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 2

Expresiones
Una expresión está constituida por un conjunto de operadores, variables y constantes que luego de ser evaluada devolverá un valor. Existen dos tipos de expresiones:
Aritméticas: Aquellas que al ser evaluadas generan un valor numérico. Lógicas: Aquellas que al ser evaluadas generan un valor lógico.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 3

Expresiones
Ejemplo: A>B
Expresión Lógica

B / 2 + 89.6 * D

Expresiones aritméticas

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 4

Expresiones
Ejemplo: A>B
Verdadero o Falso

B / 2 + 89.6 * D

Número

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 5

Expresiones Aritméticas
Están formadas por una combinación de: Variables. Constantes. Operadores Aritméticos.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 6

Expresiones Aritméticas
Operadores Aritméticos: Suma: + Resta: Multiplicación: * División Real: / División Entera: \
Si se opera con 2 valores enteros (o redondeado) el resultado será la parte entera del resultado de la división.

Residuo de división entera: %
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 7

Expresiones Aritméticas
Los operadores aritméticos son operadores binarios. Su forma general: Variable operador Constante Variable operador Variable Expresión Aritmética operador Expresión Aritmética Ejemplo: B/2 4/2 A+4/2
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 8

Expresiones Lógicas
Son expresiones que al evaluarlas puede tomar uno de dos posible valores:
Verdadero (V). Falso (F).

La Condición utilizada en las estructuras condicionales y repetitivas es una expresión lógica.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 9

Expresiones Lógicas
Expresión lógica

Condición
V

F

Paso 1 … Paso n

Paso 1 Paso n

Mientras (Condición)

Expresión lógica
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 10

Expresiones Lógicas
Ejemplo: Algunas expresiones lógicas: Verdadero Esta lloviendo ó Falso Verdadero El número a es primo ó Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 11

Expresiones Lógicas
Al Evaluar: Si a = 1 Entonces El número a es primo → Verdadero Si a = 8 Entonces El número a es primo → Falso

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 12

Expresiones Lógicas
Expresiones Lógicas Sencillas: Están formadas por una combinación de: Variables. Constantes. Expresiones Aritméticas. Operadores Relaciónales.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 13

Expresiones Lógicas
Operadores Relacionales: Establecen la relación entre dos valores numéricos. Mayor que: > Menor que: < Igual que: == Mayor o igual que: >= Menor o igual que: <= Distinto que: !=

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 14

Expresiones Lógicas
Operadores Relacionales: Son operadores binarios. Su forma general: Variable operador Constante Variable operador Variable Expresión Aritmética operador Expresión Aritmética Al evaluarla tomara uno de dos posibles valores: Verdadero ó Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 15

Expresiones Lógicas
Ejemplo:

a == 4 a >= 4 a <= 4 a != 4 a + 2 != 4
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 16

Expresiones Lógicas
Ejemplo:

a == 4 → ? a >= 4 → ? a <= 4 → ? a != 4 → ? a + 2 != 4 → ?
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 17

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces a == 4 a >= 4 a <= 4 a != 4 a + 2 != 4
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 18

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces a == 4 → Falso a >= 4 → Falso a <= 4 → Verdadero a != 4 → Verdadero a + 2 != 4 → Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 19

Expresiones Lógicas
Expresiones Lógicas Compuestas: Están formadas por una combinación de: Expresiones Lógicas Sencillas. Operadores Lógicos. Expresiones Lógicas Compuestas.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 20

Expresiones Lógicas
Operadores Lógicos: Combinan expresiones lógicas Sencillas y/o Compuestas. Y: && O: || Ejemplo 4.4: Si (esta lloviendo && a es primo) Si (esta lloviendo || a es primo)

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 21

Expresiones Lógicas
Operadores Lógicos: Son operadores binarios. Su forma general: Expresión Lógica 1 operador Expresión Lógica 2 Al evaluarla tomara uno de dos posibles valores: Verdadero ó Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 22

Expresiones Lógicas
Operador lógico Y: Solo se evaluara Verdadero si ambas expresiones son Verdaderas. De lo contrario será Falso. Expresión 1 && Expresión 2
Expresión 1 Verdadera Verdadera Falsa Falsa Expresión 2 Verdadera Falsa Verdadera Falsa
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 23

Resultado Verdadero Falso Falso Falso

Expresiones Lógicas
Operador lógico O: Solo se evaluara Falso si ambas expresiones son Falsas. De lo contrario será Verdadero. Expresión 1 || Expresión 2
Expresión 1 Verdadera Verdadera Falsa Falsa Expresión 2 Verdadera Falsa Verdadera Falsa
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 24

Resultado Verdadero Verdadero Verdadero Falso

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces a == 4 && a == 2 a >= 4 || a == 2 a <= 4 && a == 2 a != 4 && a == 4
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 25

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces a == 4 && a == 2 → Falso a >= 4 || a == 2 → Verdadero a <= 4 && a == 2 → Verdadero a != 4 && a == 4 → Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 26

Expresiones Lógicas
Operador Adicional: Operador Negación Lógica: !
Invierte el resultado de una expresión lógica. Es operador unario. Su forma general:

! Expresión
Al evaluarla tomara uno de dos posibles valores:

Verdadero ó Falso

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 27

Expresiones Lógicas
Operador Negación Lógica: !Expresión
Expresión Verdadera Falsa Resultado Falso Verdadero

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 28

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces !(a == 4) !(a >= 4) !(a <= 4) !(a != 4)
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 29

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces !(a == 4) → Verdadero !(a >= 4) → Verdadero !(a <= 4) → Falso !(a != 4) → Falso
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 30

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces !(a == 4 && a == 2) !(a >= 4 || a == 2) !(a <= 4 && a == 2) !(a != 4 && a == 4)
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 31

Expresiones Lógicas
Ejemplo: Si a = 2 Entonces !(a == 4 && a == 2) → Verdadero !(a >= 4 || a == 2) → Falso !(a <= 4 && a == 2) → Falso !(a != 4 && a == 4) → Verdadero
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 32

Expresiones Lógicas
Ejemplo: Construir algoritmo obtener el máximo valor de tres números.

Fase 1: Análisis y Diseño: DES, DF o DRE y LV

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 33

Corrida en frío
Al definir los casos de prueba a que tener en cuenta que se forman nuevos caminos al utilizar expresiones lógica compuestas
Convertidor 1 Leer n n < 0 || n > 10
V F V

Convertidor 2 Leer n n > 0 && n < 10
F

n=n+1

n=n-1

n=n+1

n=n-1

Escribir n Fin
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 34

Escribir n Fin

Expresiones
Ejemplo:
Expresión Lógica

A+2>B–1
Expresiones aritméticas

A = B / 2 + 89.6 * D Para poder determinar el valor es necesario determinar el orden en que se evaluarán los operadores, lo que se conoce como precedencia de operadores.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 35

Expresiones
Ejemplo:
Expresión Lógica

A+2>B–1
Expresiones aritméticas

A = B / 2 + 89.6 * D

B A= D 2 + 89.6 B A= 2 + 89.6 * D B A = + 89.6 * D 2

?

Para poder determinar el valor es necesario determinar el orden en que se evaluarán los operadores, lo que se conoce como precedencia de operadores.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 36

Expresiones
Precedencia de los operadores:
1 2 3 4 5 6 7 8 () ! * > / + – < >= == != && || -N % <=

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 37

Precedencia de la familia C

Expresiones
Precedencia de los operadores: 1º se evalúan ( ), luego !, así sucesivamente. En caso de igualdad de precedencia se evalúan de izquierda a derecha. Cada lenguaje de programación tiene su orden de precedencia.

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 38

Expresiones
Ejemplo: A+2>B–1

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 39

Expresiones
Ejemplo:
1

A+2>B–1

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 40

Expresiones
Ejemplo:
1 2

A+2>B–1

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 41

Expresiones
Ejemplo:
1 3 2

A+2>B–1

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 42

Expresiones
Ejemplo:
1 3 2

A+2>B–1 A = B / 2 + 89.6 * D

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 43

Expresiones
Ejemplo:
1 3 2

A+2>B–1
1

A = B / 2 + 89.6 * D

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 44

Expresiones
Ejemplo:
1 3 2

A+2>B–1
1 2

A = B / 2 + 89.6 * D

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 45

Expresiones
Ejemplo:
1 3 2

A+2>B–1
1 3 2

A = B / 2 + 89.6 * D

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 46

Expresiones
Ejemplo:
1 3 2

A+2>B–1
1 3 2

A = B / 2 + 89.6 * D

B A = + 89.6 * D 2

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 47

Expresiones
Precedencia de los operadores:
1 2 3 4 5 6 7 8 () ! * > / + – < >= == != && || -N % <=
Expresiones Aritméticas

1º se evalúan Expresiones Aritméticas

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 48

Expresiones
Precedencia de los operadores:
1 2 3 4 5 6 7 8 () ! * > / + – < >= == != && || -N % <=
Expresiones Lógicas

1º se evalúan Expresiones Aritméticas, 2º se evalúan Expresiones Lógicas,
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 49

Expresiones
Precedencia de los operadores:
1 2 3 4 5 6 7 8 () ! * > / + – < >= == != && || -N % <=
Expresiones Lógicas Sencillas

1º se evalúan Expresiones Aritméticas, 2º se evalúan Expresiones Lógicas Sencillas,
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 50

Expresiones
Precedencia de los operadores:
1 2 3 4 5 6 7 8 () ! * > / + – < >= == != && || -N % <=
Expresiones Lógicas Compuestas

1º se evalúan Expresiones Aritméticas, 2º se evalúan Expresiones Lógicas Sencillas, 3º se evalúan Expresiones Lógicas Compuestas.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 51

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 52

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) )

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 53

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 54

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 55

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6 4. C / 8

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 56

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6 4. C / 8 5. 5 % (D – 1)

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 57

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6 4. C / 8 5. 5 % (D – 1) 6. A * 2 / 6 – B

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 58

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6 4. C / 8 5. 5 % (D – 1) 6. A * 2 / 6 – B 7. C / 8 + 5 % (D – 1)

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 59

Expresiones
Ejemplo: Determinar el orden en que se evaluará la siguiente: A * 2 / 6 – B > C / 8 + 5 % (D – 1)
1. (D – 1) 2. A * 2 3. A * 2 / 6 4. C / 8 5. 5 % (D – 1) 6. A * 2 / 6 – B 7. C / 8 + 5 % (D – 1) 8. A * 2 / 6 – B > C / 8+ 5 % (D – 1)

Programación – Prof. Gonzalo Müller – Clase 4 – GM - 60

Expresiones
Por lo tanto la expresión: A * 2 / 6 – B > C / 8 + 5 % (D – 1) Es equivalente: (((A * 2) / 6) – B) > (C / 8 + (5 % (D – 1)))
Para aumentar la legibilidad y reducir la posibilidad de construir expresiones incorrectas es Recomendable: 1. El uso de los paréntesis. 2. Agregar espacios en blancos entre los operadores y los operandos.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 61

Expresiones
Ejemplo: A = B /(2 + 89.6) * D ( ) A = B /(2 + 89.6 * D) ( ) A = (B / 2) + (89.6 * D) ) ) A = B / 2 + 89.6 * D
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 62

B A= D 2 + 89.6 B A= 2 + 89.6 * D B A = + 89.6 * D 2 B A = + 89.6 * D 2

Ejercicio
4.1. Construir las expresiones lógicas para establecer: a) Si dos números no son positivos. b) Si un número no se encuentra entre 1 y 24. d) Si punto pertenece al interior de una circunferencia de radio R situada en el origen. e) Si un número no es par, o se encuentra entre 1 y 24. f) Si punto pertenece al interior de una circunferencia de radio R situada en el origen y al 1º cuadrante.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 63

Ejercicio
4.2. Determinar el tipo y el orden en el que se evaluará las siguientes expresiones: a. 6 + 7 / 5 * 2 - 8 % 2 b. 2 + C != – 2 || 456 + C / 5 c. 8 / 5 * 2 – 1 % 5 * 5 + 2 / 4 d. D + 1 / 2 – 5 *A + A > 3 / 5 * D e. A + 2 > 8 / B && A > 23 || C + 56 % 5
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 64

Ejercicio
4.3 Para cada uno de los siguientes problemas: a) Sumar 3 números si son iguales y positivos y de lo contrario, reste los positivos de los negativos. b) Dividir 2 números (0?), el menor entre el mayor. c) Leer y escribir números hasta que el leído sea mayor que 5 o se hayan leído 5 números. Fase 1: Análisis y Diseño: DES, DF, DRE y LV. Señalar en DF o DRE: Estructuras, Expresiones, Contadores, Acumuladores, Inicialización, Conteo y Acumulación. Realizar una corrida en frío.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 65

Resumen
Expresiones Aritméticas: Operadores Aritméticos: +, – , *, /,\, % Expresiones Lógicas: Expresiones Lógicas Sencillas:
Operadores Relacionales: >, <, >=, <=, ==, !=

Expresiones Lógicas Compuestas:
Operadores Lógicos: &&, || Operador Negación: ! Considerar en Corridas en Frío

Precedencia de Operadores → Paréntesis. Operadores y precedencia dependen del lenguaje.
Programación – Prof. Gonzalo Müller – Clase 4 – GM - 66

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.