Informática Prof. María Alejandra Quintero. Operadores relacionales Operadores lógicos ...
-
Upload
aurora-rivero-aguilera -
Category
Documents
-
view
230 -
download
0
Transcript of Informática Prof. María Alejandra Quintero. Operadores relacionales Operadores lógicos ...
TEMA 8. ESTRUCTURAS DE DECISIÓN. Clases 1 y 2.
Informática
Prof. María Alejandra Quintero
Contenido
Operadores relacionales Operadores lógicos Expresiones lógicas Estructuras de decisión simple Estructuras de decisión doble
Operadores relacionales
Permiten hacer comparaciones entre cantidades, constantes y variables.
Operador Significado Equivalente matemático
> Mayor que >
< Menor que <
>= Mayor o igual que ≥
<= Menor o igual que ≤
= Igual a =
<> Diferente a ≠
Una expresión lógica o booleana combina constantes y variables, y al ser evaluada el resultado siempre es verdadero o falso.
Ejemplos:X < 3Y > X – 4Y <= XX = Y
Expresiones lógicas con operadores relacionales
Si X=5 y Y=2, ¿ cuál es el valor de estas expresiones?
Comparación de cadenas de caracteres
a < b < c < . . . < z
A< B < C < . . . < Z
Minúsculas > Mayúsculas
Ejemplos:“Ana” < “Anabel” Verdadero
“Betancourt” > “Rodríguez” Falso
“ovejo” < “oveja” ?
Operadores lógicos
Se aplican a variables o constantes lógicas. Los operadores lógicos básicos son: AND, OR y NOT.
OPERADOR ANDRelaciona dos operandos (variables o constantes) booleanos, de acuerdo a la siguiente sintaxis:
Operando 1 AND Operando 2
Posibles resultados del operador AND
Operando 1
Operando 2
Resultado
V V V
V F F
F V F
F F F
Ejemplo: Si X=V y Y=F, ¿cuál es el valor de la expresión Z= X and Y?
OPERADOR ORRelaciona dos operandos booleanos, de acuerdo a la siguiente sintaxis:
Operando 1 OR Operando 2
Operando 1
Operando 2
Resultado
V V V
V F V
F V V
F F F
Posibles resultados del operador OR
OPERADOR NOTSe aplica a un operando lógico y da como resultado el valor opuesto al que tiene el operando.
Sintaxis:
NOT Operando
Operando ResultadoV F
F V
Posibles resultados del operador NOT
Una expresión lógica puede tener un solo operador lógico, por ejemplo: W = A or B , si A=F y B=V entonces W= V.
También pueden haber varios operadores lógicos en una misma expresión.Ejemplo: Not A And B or C
Expresiones lógicas con operadores lógicos
Si A=F , B=V y C= F, ¿cuál es el valor de esta expresión?
Orden de precedencia de los operadores lógicos
Operador Orden de precedencia
( ) 1
Not 2
And 3
Or 4
Ejemplo: Si A=V, B=V, C=F y D= F, ¿cuál es el valor de la expresión Y = Not (A and C) or B and C?
Es posible usar ambos tipos e operadores en una misma expresión, por ejemplo: Y = (A >= 5) and (B < 8)
Expresiones lógicas con operadores lógicos y operadores relacionales
Si A=8 y B=2 ¿cuál es el valor de esta expresión?
Estructuras de decisión
Se utilizan cuando se desea que un programa ejecute algunas instrucciones dependiendo de una condición.
En una estructura de decisión se evalúa una condición (expresión lógica o variable lógica), y dependiendo de su valor (Verdadero o Falso) el programa elige qué hacer.
Estructuras de decisión simple
Este tipo de estructura evalúa una condición lógica, si es verdadera, se ejecuta un conjunto de instrucciones. Si la condición es falsa se ignoran estas instrucciones.
Diagrama de flujo:
Condición
Instrucciones
FV
Notación algorítmica
Si condición Entonces instruccionesFin de si
Sintaxis en Visual Basic
If condición Then instruccionesEnd if
Ejercicio 1
Elaborar un programa que calcule la nota final de Informática, a partir de la nota obtenida en teoría (75%) y la nota de práctica (25%). Además de la nota final, el programa debe indicar en un mensaje si el estudiante está aplazado.
Análisis E-P-S
EntradaNotaT: nota obtenida en teoría. Tipo: Real.NotaP: nota obtenida en práctica. Tipo: Real.
ProcesoNotaF = 0.75xNotaT + 0.25xNotaP
Si NotaF < 9.5 => Escribir APLAZADO
SalidaNotaF: nota final de Informática. Tipo Real.
Algoritmo
0. Inicio1. Solicitar nota obtenida en teoría (NotaT)2. Solicitar nota obtenida en práctica (NotaP)3. NotaF = 0.75xNotaT + 0.25xNotaP4. Mostrar Nota final (NotaF)5. Si NotaF < 9.5 Entonces 5.1 Mostrar mensaje “APLAZADO” Fin de si (5)6. Fin
Programa en Visual Basic
Sub Main()
Dim NotaT, NotaP, NotaF As Single
NotaT = InputBox("Escriba la nota obtenida en teoría: ") NotaP = InputBox("Escriba la nota obtenida en práctica: ") NotaF = 0.75 * NotaT + 0.25 * NotaP MsgBox("La nota final es " & NotaF & " puntos") If NotaF < 9.5 Then MsgBox("Estudiante APLAZADO") End If
End Sub
Ejercicio 2
Elaborar un programa que determine el precio de un boleto ida y vuelta en autobús, tomando en cuenta la distancia a recorrer , el precio por Km recorrido y el número de días de estadía. Si el número de días de estadía es superior a 7 y la distancia superior a 800 Km. El precio del boleto tiene una reducción del 15%.
Estructuras de decisión doble
Se utilizan cuando se debe elegir entre dos alternativas dependiendo de una condición.
Una E.D. doble evalúa una expresión lógica, si ésta es verdadera se ejecuta un conjunto de instrucciones, y si es falsa se ejecuta otro conjunto de instrucciones.
Diagrama de flujo:
Condición
Instrucciones B
FV
Instrucciones A
Notación algorítmica
Si condición Entonces instrucciones Ade lo contrario instrucciones BFin de si
Sintaxis en Visual Basic
If condición Then instrucciones AElse instrucciones BEnd if
Ejercicio 1
Elaborar un programa que calcule la nota final de Informática, a partir de la nota obtenida en teoría (75%) y la nota de práctica (25%). Además de la nota final, el programa debe indicar en un mensaje si el estudiante está aplazado o si está aprobado.
Análisis E-P-S
EntradaNotaT: nota obtenida en teoría. Tipo: Real.NotaP: nota obtenida en práctica. Tipo: Real.
ProcesoNotaF = 0.75xNotaT + 0.25xNotaP
NotaF < 9.5 Verdadero => Escribir APLAZADO Falso => Escribir APROBADOSalidaNotaF: nota final de Informática. Tipo Real.
Algoritmo
0. Inicio1. Solicitar nota obtenida en teoría (NotaT)2.Solicitar nota obtenida en práctica (NotaP)3. NotaF = 0.75xNotaT + 0.25xNotaP4. Escribir Nota final (NotaF)5. Si NotaF < 9.5 Entonces 5.1 Mostrar mensaje “APLAZADO” De lo contrario 5.2 Mostrar el mensaje “APROBADO” Fin de si (5)6. Fin
Programa en Visual Basic
Sub Main()
Dim NotaT, NotaP, NotaF As Single
NotaT = InputBox("Escriba la nota obtenida en teoría: ") NotaP = InputBox("Escriba la nota obtenida en práctica: ") NotaF = 0.75 * NotaT + 0.25 * NotaP MsgBox("La nota final es " & NotaF & " puntos") If NotaF < 9.5 Then MsgBox("Estudiante APLAZADO") Else MsgBox("Estudiante APROBADO") End If
End Sub
Ejercicio 2
Una empresa requiere un programa que calcule la comisión que le corresponde a un vendedor. Si vendió 100000 Bs. o más, la comisión es del 3% de las ventas. Si vendió menos de 100000 Bs. La comisión es del 1% de las ventas.