[SEGUNDO PERIODO]
Tema Nº7: Estructuras algorítmicas selectivas
Comentarios:
• ¿Qué es una expresión lógica?
Las estructuras son:
Las expresiones lógicas o booleanas, llamadas así en honor del matemático George Boole, están constituida por números, constantes o variables y operadores relacionales o lógicos. El valor que pueden tomar estas expresiones es el de verdadero o falso.
• Operadores relacionales
Un operador relacional se utiliza para comparar los valores de dos expresiones. Éstas deben ser del mismo tipo (aritméticas, lógicas, de carácter o de cadena).
Las estructuras lógicas selectivas se encuentran en la solución algorítmica de casi todo tipo de problema. Se utiliza cuando en el desarrollo de la solución de un problema se debe tomar una decisión, para establecer un proceso o señalar un camino alternativo a seguir.
Un operador relacional se utiliza para comparar los valores de dos expresiones. Éstas deben ser del mismo tipo (aritméticas, lógicas, de carácter o de cadena).
Las estructuras lógicas selectivas se encuentran en la solución algorítmica de casi todo tipo de problema. Se utiliza cuando en el desarrollo de la solución de un problema se debe tomar una decisión, para establecer un proceso o señalar un camino alternativo a seguir.
Las estructuras son:
Si Entonces (Estructura selectiva simple)
Si Entonces / Sino (Estructura selectiva doble)
Si Múltiple
Conclusiones:
Las estructuras lógicas selectivas son comúnmente usadas en la resolución de todo tipo de problemas, y debemos ocupar la que sea necesaria para resolver el problema, para ello se hará uso de expresiones lógicas y operadores relacionales.
Practica #7
Problema 2:
La cotangente de un ángulo se define como el cociente entre el coseno y el seno de dicho ángulo.
Algoritmo:
Proceso Cotangente Escribir "Ingrese el ángulo:" Leer ang angr <- (ang* PI) / 180 Si sen(angr) <> 0 Entonces cot <- cos(angr)/sen(angr) Escribir "Cotangente = ", cot Sino Escribir " El seno del ángulo no puede ser cero." FinSi FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 4:
Dado como dato el sueldo de un trabajador, considere un aumento del 15% si su sueldo es inferior a $1,000 y de un 12% en caso contrario. Imprima el sueldo con el aumento incorporado. Haga el diagrama de flujo correspondiente.
Algoritmo:
Proceso sueldo Escribir "Ingrese sueldo:" Leer sueldo Si sueldo<1000 Entonces sn <- (sueldo*1.15) Escribir "Aumento de 15%" Sino sn <- (sueldo*1.12) Escribir "Aumento de 12%" FinSi Escribir "Sueldo nuevo = $", sn FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 6:
Haga un diagrama de flujo para calcular el precio del billete ida y vuelta en ferrocarril, conociendo la distancia del viaje de ida y el tiempo de estancia. Se sabe además que si el número de días de estancia es superior a 7 y la distancia total (ida y vuelta) a recorrer es superior a 800 km, el billete tiene una reducción del 30%. El precio por Km es de $0.23.
Algoritmo:
Proceso viaje Escribir "Ingrese distanca de ida en km" leer dist1 Escribir "Ingrese distancia de vuelta en km" leer dist2 Escribir "¿Cuantos dias duró su estadía?" leer est distT <- dist1+dist2 preciob <- (distT*0.23) Si distT>800 Y est>7 entonces Escribir "El precio original es de: $", preciob descuento <- preciob*0.30 costov <- preciob-descuento sino costov = preciob FinSi Escribir "El billete costará: $", costov FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 8:
Construya un diagrama de flujo que pueda determinar, dado dos números enteros, si un número es divisor de otro.
Algoritmo:
Proceso numeros Escribir 'Ingrese ingrese dos numeros:' Leer n1,n2 Escribir "" Si (n1 MOD n2=0) Entonces Escribir n2,' es divisor de ',n1 Sino Escribir n2,' no es divisor de ',n1 FinSi Si (n2 MOD n1=0) Entonces Escribir n1,' es divisor de ',n2 Sino Escribir n1,' no es divisor de ',n2 FinSi FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 10:
Construya un diagrama de flujo tal que dado como datos A, B y N, compruebe la igualdad de la siguiente expresión:
Algoritmo:
Proceso igualdad Escribir "Ingrese datos A, B y n: " Leer A, B, n Escribir "Comprobando la igualdad de" Escribir "(A/B)^n = (A^n / B^n)" Escribir "" Si B <> 0 Entonces Escribir "(", A, "/", B, ")^", n, " =" resp1 <-(A/B)^n Escribir "R/ ", resp1 Escribir "" Escribir A, "^", n, " / ", B, "^", n " =" resp2 <- (A^n / B^n) Escribir "R/ ", resp2 Escribir "" Escribir resp1, " = ", resp2 Sino Escribir "Valor de B incorrecto" Escribir "Division entre cero no existe" FinSi FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 12:
Construya un diagrama de flujo tal que dado como dato una temperatura en grados Fahrenheit, determine el deporte que es apropiado practicar a esa temperatura, teniendo en cuenta la siguiente tabla:
Algoritmo:
Proceso temperatura Escribir "¿Que deporte debo practicar?" Escribir "Ingrese la temperatura en grados Fahrenheit:" Leer temp Escribir "" Si temp > 85 Entonces Escribir "Buen tiempo para practicar Natación." FinSi Si temp > 70 Y temp <= 85 Entonces Escribir "Un dia perfecto para una partida de Tenis!" FinSi Si temp > 32 Y temp <= 70 Entonces Escribir "Deberias jugar Golf!" FinSi Si temp > 10 Y temp <= 32 Entonces Escribir "Pfrr.. que frio! Buen clima para Esquiar" FinSi Si temp <= 10 Entonces Escribir "No vendria mal salir a dar una marcha." FinSi FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 14:
Haga un diagrama de flujo que permita calcular el valor de f(x), según la expresión:
Algoritmo:
Proceso fx Escribir "Ingrese el valor de x:" Leer x Escribir "" Escribir "Residuo de x mod 4 = ", x mod 4 Escribir "" Si x mod 4 = 0 Entonces resp <- x^(2) Escribir "Función f(x)= ", x, "^(2)" FinSi Si x mod 4 = 1 Entonces resp <- x/6 Escribir "Función f(x)= ", x, "/6" FinSi Si x mod 4 = 2 Entonces resp <- RAIZ(x) Escribir "Función f(x)= RAIZ(", x, ")" FinSi Si x mod 4 = 3 Entonces resp <- x^(3)+5 Escribir "Función f(x)= ", x, "^(3)+5" FinSi Escribir "R/ ", resp FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 16:
Construya un diagrama de flujo tal que dado como datos el modelo de un vehículo y su precio, determine el valor final que debe pagar el comprador. El concesionario está haciendo descuentos teniendo en cuenta el modelo, con base en la siguiente tabla.
Algoritmo:
Proceso vehiculo Escribir "Bienvenido!" Escribir "Calcule el descunto de la compra de su vehículo" Escribir "Ingrese precio del vehículo:" Leer precio Escribir "Escoja un modelo:" Escribir "1 = Blazer-Trail" Escribir "2 = Cavalier" Escribir "3 = Chevy" Escribir "4 = Opel-Astra" Leer op Escribir "" Segun op Hacer 1: Escribir "Modelo Blazer-Trail: Descuento 8%" Escribir "Nuevo precio = ", precio * 0.92 2: Escribir "Modelo Cavalier: Descuento 5%" Escribir "Nuevo precio = ", precio * 0.95 3: Escribir "Modelo Chevy: Descuento 6%" Escribir "Nuevo precio = ", precio * 0.94 4: Escribir "Modelo Opel-Astra: Descuento 9%" Escribir "Nuevo precio = ", precio * 0.91 FinSegun FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 18:
Construya un diagrama de flujo que le permita calcular e imprimir el costo de una llamada telefónica. Para calcular el costo final se sigue lo indicado en la siguiente tabla:
Algoritmo:
Proceso Llamada Escribir "Calcule el precio de una llamada!" Escribir "¿Cuantos minutos duró la llamada?" Leer tiempo Escribir "" Escribir "¿En que zona se realizó la llamada?" Escribir "1 = América del Norte" Escribir "2 = América Central" Escribir "3 = América del Sur" Escribir "4 = Europa" Escribir "5 = Asia" Escribir "6 = África" Escribir "7 = Oceanía" Leer zona Segun zona Hacer 1: Si tiempo <= 3 Entonces precio <- tiempo * 2 Sino precio <- tiempo * 1.5 FinSi 2: Si tiempo <= 3 Entonces precio <- tiempo * 2.2 Sino precio <- tiempo * 1.8 FinSi 3: Si tiempo <= 3 Entonces precio <- tiempo * 4.5 Sino precio <- tiempo * 3.5 FinSi 4: Si tiempo <= 3 Entonces precio <- tiempo * 3.5 Sino precio <- tiempo * 2.7 FinSi 5: Si tiempo <= 3 Entonces precio <- tiempo * 6 Sino precio <- tiempo * 4.6 FinSi 6: Si tiempo <= 3 Entonces precio <- tiempo * 6 Sino precio <- tiempo * 4.6 FinSi 7: Si tiempo <= 3 Entonces precio <- tiempo * 5 Sino precio <- tiempo * 3.9 FinSi FinSegun Escribir "" Escribir "La llamada costo: $", precio/100 FinProceso
Diagrama de flujo:
Pantalla de salida:
Problema 20:
Escriba un diagrama de flujo que permita realizar la conversión de pesos y medidas. Considere las siguientes equivalencias:
Algoritmo:
Proceso Conversor Escribir "Conversor de pesos y medidas" Escribir "¿Que tipo de medida desea covertir?" Escribir "1 = Longitud" Escribir "2 = Volumen" Escribir "3 = Peso" Leer op1 Escribir "" Segun op1 Hacer 1: Escribir "Medida a convertir" Escribir "1 = Pulgadas a milímetros" Escribir "2 = Yardas a metros" Escribir "3 = Millas a kilómetros" Escribir "4 = Pulgadas^2 a centímetros" Escribir "5 = Pies^2 a metros^2" Escribir "6 = Yardas^2 a metros^2" Escribir "7 = Acres a kilómetros^2" Leer op2 Escribir "Ingrese medida a convertir:" Leer med Escribir "" Segun op2 Hacer 1: Escribir med, " Pulgadas = ", med*25.4, " milímetros." 2: Escribir med, " Yardas = ", med*0.9144, " metros." 3: Escribir med, " Millas = ", med*1.6093, " kilómetros" 4: Escribir med, " Pulgadas = ", med *6.452, " centímetros." 5: Escribir med, " Pies^2 = ", med*0.09290, " metros^2." 6: Escribir med, " Yardas^2 = ", med* 0.8361, "metros^2" 7: Escribir med, " Acres = ", med*2.59 " kilómetros^2" FinSegun 2: Escribir "Medida a convertir" Escribir "1 = Pie^3 a metros^3" Escribir "2 = Yarda^3 a metros^3" Escribir "3 = Pintas a litros" Escribir "4 = Galones a litro" Leer op2 Escribir "Ingrese medida a convertir:" Leer med Segun op2 Hacer 1: Escribir med, " Pie^3 = ", med*0.02832, " metros^3." 2: Escribir med, " Yardas^3 = ", med*0.7646, " metros^3." 3: Escribir med, " Pintas = ", med*0.56826, " litros" 4: Escribir med, " Galones = ", med *4.54609, " litros." FinSegun 3: Escribir "Medida a convertir" Escribir "1 = Onzas a gramo" Escribir "2 = Libras a kilogramos" Escribir "3 = Ton Inglesas a toneladas" Leer op2 Escribir "Ingrese medida a convertir:" Leer med Segun op2 Hacer 1: Escribir med, " Onzas = ", med*28.35, " gramos." 2: Escribir med, " Libras = ", med*0.45359, " kilogramos." 3: Escribir med, " Ton Inglesas = ", med*1.0160, " toneladas" FinSegun FinSegun FinProceso
Diagrama de flujo:
Pantalla de salida:
No hay comentarios:
Publicar un comentario