ALGORITMOS RESUELTOS CON DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO

Documentos relacionados
Universidad Autónoma del Estado de México Facultad de Medicina

BOLETÍN 5: Algoritmos II

ESTRUCTURAS ALGORITMICAS

ESTRUCTURA DECISIÓN LÓGICA

ALGORITMOS RESUELTOS CON DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO CIENCIAS BÁSICAS. Francisco Javier Pinales Delgado César Eduardo Velázquez Amador

Diagrama de flujo Es un esquema para representar gráficamente un algoritmo. Se basan en la utilización de diversos símbolos para representar operacion

UNIVERSIDAD LUTERANA SALVADOREÑA. Docente: ANA LISSETTE GIRÓN

Estructuras Secuénciales

GUÍA Nro. 2. ESCRIBIENDO ALGORITMOS CON DIAGRAMAS DE FLUJO Y ESTRUCTURAS DE CONTROL (Secuenciales)

LENGUAJE DE PROGRAMACION UNO.

EJEMPLOS Y EJERCICIOS

Fundamentos de Programación. Flujo de Control I: Estructuras selectivas

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

19. En un hospital existen tres áreas: Ginecología, Pediatría, Traumatología. El presupuesto anual del hospital se reparte conforme a la sig.

PROBLEMAS Y ALGORITMOS

3. TÉCNICAS DE DISEÑO

Principios de Algoritmia

Unidad 1. Análisis de algoritmos.

INTRODUCCIÓN A LA PROGRAMACIÓN Segundo Parcial - Marzo 19 de Consideraciones Generales

Desarrollo de Programas. Prof. Lisbeth C. Pérez Rivas

Laboratorio 02: Ejercicios de programación en C

Profesor(a): Ing. Miriam Cerón Brito

Matemáticas Financieras

UNIDAD II: Estructuras Decisión Lógica

Estructura Selectiva Múltiple

Programación en java. Estructuras algorítmicas

Tema 2. Concepto de Algoritmo

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

EJEMPLOS Y EJERCICIOS

CLASIFICACION DE LAS ESTRUCTURAS DE CONTROL

3) Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuánto deberá pagar finalmente por su compra.

SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos

ALGORITMOS, ESTRUCTURAS Y PROGRAMACION

3. ESTRUCTURAS ESTÁNDAR 2

Estructuras de control

ALGORITMOS RESUELTOS CON DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO CIENCIAS BÁSICAS. Francisco Javier Pinales Delgado César Eduardo Velázquez Amador

UNIDAD V: ESTRUCTURAS REPETITIVAS

Algoritmos. Intro. Prof. Raquel Torres Peralta / Gerardo Sanchez S. Unison

RECORDAR TIPOS DE DATOS

INSTITUTO POLITECNICO NACIONAL UNIDAD PROFESIONAL INTERDISCIPLINARIA DE BIOTECNOLOGIA DEPARTAMENTO DE CIENCIAS BASICAS

UNIDAD III: Estructura Según o de selección Múltiple

DIAGRAMAS DE FLUJO ELEMENTOS E INSTRUCCIONES A USAR EN UN DIAGRAMA DE FLUJO

Escribir programas a partir de un diagrama de flujo

Elabore el diagrama de clases en UML y la codificación de un programa para resolver los siguientes problemas:

Algoritmos. Diagramas de Flujo. Informática IV. L. S. C. Heriberto Sánchez Costeira

ESTRUCTURA DE ASIGNACIÓN

CÁLCULO DE REMUNERACIÓN

Unidad No. IV. Costo anual uniforme equivalente (CAUE) y Análisis incremental. 1. Costo anual uniforme equivalente. (CAUE)

PROGRAMACION Ejercicios 5 SHEILA NIETO UREÑA

Dpto. de ATC, Universidad de Sevilla - Página 1 de 16

PRÁCTICA FUNDAMENTOS DE ALGORITMOS I. Objetivos

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.

Glosario de términos. Introducción a las Matemáticas Financieras

Instrucciones. 1. Revisión de conceptos asociados a los números enteros. 2. Desarrollo de ejemplos en pizarra.

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

Estructuras de Decisión Simples y Dobles

Capítulo 4 Procesos con estructuras de repetición

NÚMEROS ENTEROS NEGATIVOS

2.3 DEFINICIÓN DE LENGUAJES ALGORÍTMICOS

ENCUESTA SOBRE HÁBITOS DE CONSUMO PARA LA CELEBRACIÓN DE LAS FIESTAS NAVIDEÑAS

GUIA DE EJERCICIOS Nº 02 Estructuras Selectivas

Para cada problema realizar: Análisis Diseño Diagramas de Flujo

LABORATORIO 3. PROGRAMACIÓN CON EL LENGUAJE JAVA

Capítulo 13 INSTRUCCIONES DE CONTROL REPETITIVAS. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

I. Algoritmos Secuenciales

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

Programación Estructurada

Lección 1: Números en teros. Orden, suma y resta

+- S x B +-E. Este estándar presupone una representación normalizada. Es decir, los números a representar obedecen a la siguiente forma:

Qué tan rentable es usar tu auto para Uber?

INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "

Tema 3. Estructuras de Datos

FICHAS DE ESTUDIO No.1. Definición del conjunto N NOMBRE FECHA

Diagramas de flujo. Actividad de aprendizaje 9. Realiza la siguiente lectura:

Tema: Entorno a C# y Estructuras Secuenciales.

Estructuras de Repetición (Repita para)

Cuentas Bansí. Por eso en Bansí tenemos una cuenta que se adapta a cada una de tus necesidades.

Formatos para prácticas de laboratorio

Bienvenido a la plataforma que paga

Trabajo Práctico Nro. 1

Departamento de Informática Universidad Técnica Federico Santa María. Tema 1: Algoritmos

Xinia Zúñiga Esquivel

TUTORIAL PSEINT. Ing. Ronald Rentería Ayquipa. Fundamentos de Programación

Actualización Complemento de Nómina 1.2

CONTENIDO 1 Diagrama de flujo 2 Pseudocodigo 3 Diagrama estructurado (nassi-schneiderman)

Ayudantía N 2 Contabilidad ICS2522

No pueden empezar por un número, es decir, el primer caracter del nombre de la variable ha de ser una letra o _

TÉRMINOS Y CONDICIONES

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

Recalculo de cuotas RT

Tema 3. Estructuras de control y programación estructurada

CAPÍTULO VI EVALUACIÓN ECONÓMICO - SOCIAL. La finalidad de este capítulo consiste en evaluar la rentabilidad

PRUEBA DE ENSAYO TERCER NIVEL DE EDUCACIÓN BÁSICA CÁLCULO Y REPRESENTACIÓN DEL ESPACIO 2013

Capítulo 2 : ALGORITMOS

No. de Suscripción DATOS PERSONALES:

AFIRMACIÓN V F 1. La Contabilidad es la ciencia que estudia el patrimonio y sus variaciones

Estructuras Condicionales

Anexos. Anexo 1: Encuesta de opinión derechohabientes del IMSS en Ciudad Juárez

Cursor Asignación Ciclo Mientras Ciclo Para Decisión Lectura Salida Llamada

Distinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.

Transcripción:

Diagramas de flujo ALGORITMOS RESUELTOS CON DIAGRAMAS DE LUJO Y PSEUDOCÓDIGO Los diagramas de flujo son una herramienta que permite representar visualmente qué operaciones se requieren y en qué secuencia se deben efectuar para solucionar un problema dado. Por consiguiente, un diagrama de flujo es la representación gráfica mediante símbolos especiales, de los pasos o procedimientos de manera secuencial y lógica que se deben realizar para solucionar un problema dado. ESTRUCTURAS SELECTIAS Ejemplo 3.2 Realice un algoritmo para determinar si un número es positivo o negativo. Represéntelo en pseudocódigo, diagrama de flujo. Como ya se mencionó anteriormente, para resolver cualquier problema se debe partir de la primicia de conocer qué variables son necesarias para resolverlo, sobre todo en aquéllos que no requieren de muchos identificadores en el proceso de solución, cuando esto sucede se puede proceder a generar primeramente la tabla de variables, aunque es posible establecerla al final o paralelamente al momento de la solución del problema, ya que a medida que se avanza con la solución surge la necesidad de utilizar nuevas variables. Para este caso, la tabla 3.2 muestra las variables que se requieren en la solución del problema. Nombre de la variable Descripción Tipo NÚM alor para determinar su signo Entero R Resultado del signo del valor String Tabla 3.2 ariables utilizadas para determinar si un número es positivo o negativo. Mediante el pseudocódigo 3.2 represente el algoritmo que permite determinar si el número que se proporciona es positivo o negativo. 1. Inicio. 2. Leer NÚM 3. Si NÚM > = 0 Hacer R = POSITIO Si no Hacer R = NEGATIO in de comparación 4. Escribir el número es, R 5. in Como se puede ver, para determinar si un número es positivo o negativo, sólo es necesario establecer si éste es mayor o igual a cero; si el resultado de la comparación es afirmativa, a la variable R se le asignará el valor de PO-SITIO, si resulta una negación, por consiguiente, el valor que tome R será de NEGATIO. Ahora, el diagrama de flujo 3.2 muestra el algoritmo que permite obtener la solución del problema tal y como se presenta mediante la utilización de pseudocódigo.

Ejemplo 3.4 Almacenes El harapiento distinguido tiene una promoción: a todos los trajes que tienen un precio superior a $2500.00 se les aplicará un descuento de 15 %, a todos los demás se les aplicará sólo 8 %. Realice un algoritmo para determinar el precio final que debe pagar una persona por comprar un traje y de cuánto es el descuento que obtendrá. Represéntelo mediante el pseudocódigo, el diagrama de flujo. El pseudocódigo 3.4 representa el algoritmo para determinar el des-cuento y el precio final que tendrá un determinado traje. 1. Inicio 2. Leer CT 3. Si CT > 2500 Hacer DE = CT * 0.15 Si no Hacer DE = CT * 0.08 in de comparación 4. Hacer P = CT - DE 5. Escribir El precio final es, P 6. Escribir El descuento es DE 7. in Como se puede ver, una vez que se obtuvo el descuento que se aplicará, se hace un solo cálculo parar determinar el precio final de la prenda; sin embargo, también se puede hacer de la siguiente forma: Hacer DE = CT * 0.15 Hacer P = CT - DE Si no Hacer DE = CT * 0.08 Hacer P = CT - DE Realizar este cálculo del precio final inmediatamente después de haber obtenido el descuento implica procesos de más, ya que la manera como se realizó en el pseudocódigo 3.2.4 es más eficiente y correcta, pues se tiene el ahorro de un proceso, pero habrá algoritmos en los que el ahorro sea más significativo. Con base en el pseudocódigo que se estableció se puede obtener la tabla 3.4, que contiene las variables que intervienen en el proceso de solución del problema.

Ejemplo 3.6 La langosta ahumada es una empresa dedicada a ofrecer banquetes; sus tarifas son las siguientes: el costo de platillo por persona es de $95.00, pero si el número de personas es mayor a 200 pero menor o igual a 300, el costo es de $85.00. Para más de 300 personas el costo por platillo es de $75.00. Se requiere un algoritmo que ayude a determinar el presupuesto que se debe presentar a los clientes que deseen realizar un evento. Mediante pseudocódigo, diagrama de flujo represente su solución. Para la solución del problema se requiere saber el número de personas que se presupuestarán para el banquete, y con base en éstas de-terminar el costo del platillo que en cierta forma es constante, con éste se determinará cuánto debe pagar el cliente en total, de aquí que la tabla 3.6 muestre las variables que se utilizarán para la solución del problema. El pseudocódigo 3.6 presenta el algoritmo de solución de este problema. NP Número de personas Entero TOT Total que se va a pagar por el banquete Real Tabla 3.6 ariables utilizadas para determinar el presupuesto de un banquete. 1. Inicio 2. Leer NP 3. Si NP > 300 Hacer TOT = NP * 75 Si no Si NP > 200 Hacer TOT = NP * 85 Si no Hacer TOT = NP * 95 in compara in compara 4. Escribir El total es, TOT 5. in

Se lee el número de personas que se atenderán. Inicio Se inicia el proceso. NP Se compara si el número de persona es mayor a 300. NP > 300 Se compara si el número de personas es mayor a 200. Se calcula el NP > 200 total que se va a pagar TOT = NP * 75.00 TOT = NP * 85.00 TOT = NP * 95.00 según el precio del platillo. TOT Se imprime el total que se va a pagar por N personas. in Se finaliza el proceso. Diagrama de flujo 3.7 Algoritmo para determinar el presupuesto de un banquete. En muchas ocasiones un mismo proceso se puede dividir en más procesos sin que esto altere el resultado como se puede ver en el diagrama de flujo 3.8, que muestran una alternativa para la solución del mismo problema. Para esta alternativa primeramente se asigna el precio al platillo y seguido a esto se calcula el pago total.

Inicio Inicia el proceso. Se lee el número de personas. NP Se verifica si el número de personas es mayor a 300. NP > 300 Se asigna el costo al platillo. CP = 75.00 C = 85.00 NP > 200 300 Se verifica si el número de personas es mayor a 200. C = 95.00 Se calcula el TOT = NP * CP TOT = NP * CP TOT = NP * CP total que se va a cobrar con base en Se imprime el costo por el número de CP, TOT platillo y el total que se va personas. a cobrar. in inaliza el proceso. Diagrama de flujo 3.8 Algoritmo para determinar el presupuesto de un banquete. Sin embargo, se pudiera presentar otra alternativa de solución, que tendría la forma del diagrama de flujo 3.9, en la cual se podrá observar que el pago total se realiza mediante un proceso común para las tres asignaciones de precio de platillo. Si se analizan las tres alternativas en cuestión de número de procesos empleados, la primera alternativa se puede considerar como la más eficiente, dado que emplea menos procesos o instrucciones para su solución; sin embargo, las tres alternativas son válidas y correctas, ya que cumplen con las características y condiciones que debe tener todo algoritmo: resolver de forma eficiente un problema dado. En la solución de muchos problemas es recomendable utilizar esta última opción, donde se emplea un proceso común para varias alternativas selectivas que se presentan en la solución del problema. Pero como se ha mencionado anteriormente, la forma de-penderá del diseñador del mismo y de las necesidades que se tengan que cubrir con la solución que se establezca.

Inicio Inicia el proceso. Se lee el número de personas. NP Se verifica si el número de personas es mayor a 300. NP > 300 Se verifica si el número de personas es mayor a 200. NP > 200 Se asigna CP = 75.00 C = 85.00 C = 95.00 el costo del platillo. TOT = NP * CP CP, TOT in Diagrama de flujo 3.9 Algoritmo para determinar el presupuesto de un banquete. Ejemplo 3.7 Se calcula el total que se va a cobrar con base en el número de personas. Se imprime el costo por platillo y el total que se va a cobrar. inaliza el proceso. La asociación de vinicultores tiene como política fijar un precio inicial al kilo de uva, la cual se clasifica en tipos A y B, y además en tamaños 1 y 2. Cuando se realiza la venta del producto, ésta es de un solo tipo y tamaño, se requiere determinar cuánto recibirá un productor por la uva que entre-ga en un embarque, considerando lo siguiente: si es de tipo A, se le cargan 20 al precio inicial cuando es de tamaño 1; y 30 si es de tamaño 2. Si es de tipo B, se rebajan 30 cuando es de tamaño 1, y 50 cuando es de tamaño 2. Realice un algoritmo para determinar la ganancia obtenida y represéntelo mediante diagrama de flujo, pseudocódigo. Realizando un análisis de los datos que se requieren y de los resulta-dos que se deben obtener, se puede determinar que son los que se muestran en la tabla 3.7, y con base en esto se puede representar el algoritmo con el diagrama de flujo 3.10. Nombre de la variable Descripción Tipo TI Tipo de la uva String TA Tamaño de la uva Entero P Precio de la uva Real K Kilos de producción Entero GA Ganancia obtenida Real

Se lee tipo, tamaño, precio y kilos de uva. Inicio TI, TA, P, K Se inicia el proceso. Se verifica si el tipo de uva es A. Se verifica si el tamaño es uno. TI = A tamaño Se verifica si el es uno. Se asigna precio a la TA = 1 TA = 1 uva. P = P + 0.20 P = P + 0.30 P = P - 0.30 P = P - 0.50 GA = P * K Se calcula la ganancia con base en el precio y los kilos producidos. Se imprime la ganancia obtenida. GA in in del proceso. Diagrama de flujo 3.10 Algoritmo para determinar las ganancias por la venta de la uva. El pseudocódigo 3.7 muestra el algoritmo correspondiente. 1. Inicio 2. Leer TI, TA, P, K 3. Si TI = A Si TA = 1 P = P + 0.20 Si no P = P + 0.30 in compara Si no Si TA = 1 P = P - 0.30 Si no P = P - 0.50 in compara in compara 4. Hacer GA = P * K 5. Escribir La ganancia es, GA 6. in Pseudocódigo 3.7 Algoritmo para determinar las ganancias por la venta de la uva.

Ejemplo 3.11 El náufrago satisfecho ofrece hamburguesas sencillas, dobles y triples, las cuales tienen un costo de $20.00, $25.00 y $28.00 respectivamente. La empresa acepta tarjetas de crédito con un cargo de 5 % sobre la compra. Suponiendo que los clientes adquieren sólo un tipo de hamburguesa, rea-lice un algoritmo para determinar cuánto debe pagar una persona por N hamburguesas. Represéntelo mediante diagrama de flujo, pseudocódigo. En la tabla 3.11 se muestran las variables que se requieren utilizar en el algoritmo para la solución del problema. El diagrama de flujo 3.14 presenta de forma gráfica ese algoritmo. Nombre de la variable Descripción Tipo TI Tipo de hamburguesa String N Número de hamburguesas Entero TP Tipo de pago String PA Precio de la hamburguesa Real CA Cargo por el uso de tarjeta Real TO Total sin cargo Real TOT Total con cargo Real Tabla 3.11 ariables utilizadas para determinar el pago por N hamburguesas.

Inicia el proceso. Inicio Se lee número y tipo de hamburguesas y tipo de pago. N, TI, TP Se determina si el tipo de hamburguesa es sencilla. TI = Sencilla TI = Doble Se determina si el tipo de hamburguesa es doble. De ser falso, será triple, dado que no fue siencilla. Se asigna el precio de la PA = 20 PA = 25 PA = 28 hamburguesa según sea el caso. Se calcula el costo de las N hamburguesas. TO = PA * N TP = TAR Se determina si se aplica cargo por el uso de tarjeta. En caso de ser falso no se CA = TO * 0.05 CA = 0 aplica cargo alguno. Se carga impuesto por el uso de tarjeta. Se calcula el total por pagar con cargo o sin cargo. TOT = TO + CA PA, TO, CA, TOT Se imprime precio de hamburguesa, total sin cargo, cargo y total (con o sin cargo). in Se finaliza el proceso. Diagrama de flujo 3.14 Algoritmo para determinar el pago por N hamburguesas. 1. Inicio 2. Leer N, TI, TP 3. Si TI = Sencilla Hacer PA = 20.00 Si no Si TI = Doble Hacer PA = 25.00 Si no Hacer PA = 28.00 in compara in de compara 4. Hacer TO = PA * N 5. Si TP = Tarjeta Hacer CA = TO * 0.05 Si no Hacer CA = 0 in compara 6. Hacer TOT = TO + CA 7. Escribir La hamburguesa costó, PA 8. Escribir El total sin cargo, TO 9. Escribir El cargo es, CA 10. Escribir El total por pagar es, TOT 11. in

Ejemplo 3.12 El consultorio del Dr. Lorenzo T. Mata Lozano tiene como política cobrar la consulta con base en el número de cita, de la siguiente forma: determinar: Las tres primeras citas a $200.00 c/u. Las siguientes dos citas a $150.00 c/u. Las tres siguientes citas a $100.00 c/u. Las restantes a $50.00 c/u, mientras dure el tratamiento. Se requiere un algoritmo para a) Cuánto pagará el paciente por la cita. b) El monto de lo que ha pagado el paciente por el tratamiento. Para la solución de este problema se requiere saber qué número de cita se efectuará, con el cual se podrá determinar el costo que tendrá la con-sulta y cuánto se ha gastado en el tratamiento. Con este análisis se puede determinar que las variables que se van a utilizar son las que se muestran en la tabla 3.12. Nombre de la variable Descripción Tipo NC Número de consulta Entero CC Costo de la cita Real TOT Costo del Real tratamiento Tabla 3.12 ariables utilizadas para determinar el costo de la consulta y del tratamiento. Con la tabla de variables establecidas previamente, el diagrama de flujo 3.15 que representa el algoritmo de solución para este problema es el siguiente.

Como se puede ver, con base en el número de cita se establece el precio, y según el rango del número de cita, se establece el costo del trata-miento. En cada proceso se le carga un valor constante (600, 900 y 1200), que corresponde a las citas previas, y este número de citas consideradas se restan del número de citas para determinar el monto de las citas en este rango de costo. Con estas mismas consideraciones, el pseudocódigo 3.12 muestra la representación correspondiente al algoritmo de solución. 1. Inicio 2. Leer NC 3. Si NC < = 3 Hacer CC = 200 Hacer TOT = NC * CC Si no Si NC < = 5 Hacer CC = 150 Hacer TOT = (NC - 3) * 150 + 600 Si no Si NC < = 8 Hacer CC = 100 Hacer TOT = (NC - 5) * 100 + 900 Si no Hacer CC = 50 Hacer TOT = (NC - 8) * 50 + 1200 in compara in compara in condición 4. Escribir El costo de la consulta es, CC 5. Escribir El costo del tratamiento es, TOT 6. in Pseudocódigo 3.12 PROPUESTOS 1. Represente un algoritmo mediante un diagrama de flujo y el pseudocódigo para determinar a qué lugar podrá ir de vacaciones una persona, considerando que la línea de autobuses La tortuga cobra por kilómetro recorrido. Se debe considerar el costo del pasaje tanto de ida, como de vuelta; los datos que se conocen y que son fijos son: México, 750 km; P.., 800 km; Acapulco, 1200 km, y Cancún, 1800 km. También se debe considerar la posibilidad de tener que quedarse en casa. 2. Se les dará un bono por antigüedad a los empleados de una tienda. Si tienen un año, se les dará $100; si tienen 2 años, $200, y así sucesivamente hasta los 5 años. Para los que tengan más de 5, el bono será de $1000. Realice un algoritmo y represéntelo mediante el diagrama de flujo, el pseudocódigo que permita determinar el bono que recibirá un trabajador. 3. Realice un algoritmo que permita determinar el sueldo semanal de un trabajador con base en las horas trabajadas y el pago por hora, considerando que a partir de la hora número 41 y hasta la 45, cada hora se le paga el doble, de la hora 46 a la 50, el triple, y que trabajar más de 50 horas no está permitido. Represente el algoritmo mediante el diagrama de flujo, el pseudocódigo 4. Los alumnos de una escuela desean realizar un viaje de estudios, pero requieren determinar cuánto les costará el pasaje, consideran-do que las tarifas del autobús son las siguientes: si son más de 100 alumnos, el costo es de $20; si son entre 50 y 100, $35; entre 20 y 49, $40, y si son menos de 20 alumnos, $70 por cada uno. Realice el algoritmo para determinar el costo del pasaje de cada alumno. Represente el algoritmo mediante el diagrama de flujo, el pseudocódigo.