Está en la página 1de 12

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Objetivo Presentar los elementos de la programacin estructurada para que el estudiante sea capaz de disear algoritmos que le permiten resolver problemas diversos. Introduccin Dentro de lo que es el capitulo de algoritmos, a veces en forma pedaggica, es un poco difcil dar este tema, la razn se fundamenta en el hecho de que el alumno no esta acostumbrado a pensar con lgica, desgraciadamente durante la formacin del alumno desde niveles bsicos de educacin no se le a enseado a crear un conocimiento significativo por lo que su mente no est acostumbrada a razonar. El problema de la implementacin de algoritmos reside en esta situacin. Cuando yo le digo al alumno Cuanto es 12 * 2? Contesta automticamente 24. Todo parecera estar bien pero lo hizo de forma automtica y no hizo la operacin siguiendo las reglas de la multiplicacin. Para poder desarrollar algoritmos es necesario seguir todas esas reglas por que al momento de codificar un programa se debe de hacer de tal manera que no exista una falla en estos pasos, por que habr que recordar que una computadora no piensa, y solo sigue las instrucciones que el programador le ha implantado al desarrollar el algoritmo. Metodologa de la programacin estructurada. La realizacin de un programa sin seguir un mtodo de programacin riguroso, aunque funcione, a la larga no ser mas que un conjunto mas o menos grande de instrucciones con falta de fiabilidad y flexibilidad; evitar estas caractersticas y buscar modos de minimizar la probabilidad de error en el proceso de programacin son bsicamente los objetivos de la Programacin Estructurada. Por lo tanto, definimos a la Programacin Estructurada como un conjunto de tcnicas de construccin de programas que utilizan al mximo los recursos del lenguaje, limita el conjunto de estructuras aplicables a leer y presenta una serie de reglas que coordinan adecuadamente el desarrollo de las diferentes fases de programacin. La Programacin Estructurada se basa en los siguientes principios: o Recursos abstractos o Estructuras bsicas de control o Diseo descendente arriba abajo (top down) Entonces podemos concluir que la Programacin Estructurada es una filosofa para la implantacin de algoritmos a travs de un conjunto finito de estructuras bien organizadas. RECURSOS ABSTRACTOS. Cuando se comienza a disear el algoritmo con el cual se resolver un problema determinado, muchos analistas y otros tantos programadores caemos en la terrible tentacin de querer tener todos los detalles de la implantacin an antes de escribir la primera lnea del cdigo. Por ejemplo si se desea implantar un programa graficador, mas de uno se sentir tentado a pensar en los grandes problemas que representar para la rutina de despliegue el contemplar todos los tipos de monitores disponibles en el mercado, Quien dijo que la rutina de despliegue debe contemplar el tipo de monitor existente en el mercado? Mejor an, Quien nos asegura que existir una rutina de despliegue? Encontrar el algoritmo implantarlo requiere de la abstraccin de las partes mas importantes y caractersticas del problema. Los detalles deben ser omitidos hasta donde sean posible. PROGRAMACION MODULAR. Este tipo de lenguaje constituye una primera herramienta al servicio del programador y de hecho sucedi as histricamente. No obstante es fcil intuir que esta herramienta nos conducir a buenos resultados para problemas de pequea o mediana complejidad, pero cuando la complejidad aumenta llevar consigo: Un aumento del tamao fsico del algoritmo Un aumento de la complejidad de sus relaciones (crecimiento anrquico) Para evitar algunos inconvenientes, aparecen dos criterios de programacin que lejos de ser contrapuestos o representar soluciones paralelas, creemos que son complementarios: LA PROGRAMACIN MODULAR es un mtodo de diseo y tiende a dividir el problema total en partes perfectamente diferenciadas que pueden ser analizadas, programadas y puestas a punto por separado. LA PROGRAMACIN ESTRUCTURADA corresponde a un mtodo de programacin, o forma de programar, y se basa simplemente en limitar el conjunto de estructuras posibles de un algoritmo a unas pocas estructuras privilegiadas que, tienden a estructurar el programa, procurando que su texto corresponda a su orden de ejecucin. Al atacar el anlisis de un problema podremos utilizar criterios de programacin modular para dividirlo en partes independientes, utilizando mtodos estructurados en la programacin de cada modulo, probndolos por separado y realizando luego su montaje ascendente. ESTRUCTURAS BSICAS DE CONTROL. El teorema de la estructura fue enunciada por Bohm y Jacopini. En el se establece que se requieren tres bloques para construir cualquier programa: Una caja de proceso. Una decisin binaria. Un mecanismo de repeticin.
PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA PAG. 1

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

El enunciado fue hecho en el artculo de Diagramas de flujo, Mquinas de Turing y Lenguajes con solo dos reglas de formulacin publicado en italiano en 1965.
ESTRUCTURAS DE CONTROL BSICAS.

BLOQUE DE PROCESO

DECISIN BINARIA

CICLO DE REPETICIN

ALGORITMO. El algoritmo es una secuencia ordenada y cronolgica de pasos que llevan a la solucin de un problema o a la ejecucin de una tarea. Los pasos deben ser simples, claros y exactos, seguir un orden lgico y adems tener un principio y un fin. Son ejemplo de algoritmos las seas para encontrar una calle, las recetas de cocina, los planos de construccin y las instrucciones para armar un juguete. Los elementos que integran la estructura de un algoritmo son los siguientes: 1. Encabezado: Todo algoritmo debe tener un encabezado como identificador, el cual debe empezar con la palabra algoritmo seguida de una descripcin apropiada. Ejemplo: Algoritmo CALCULAR SUELDO DE UN EMPLEADO 2. Definicin de variables: El primer paso para crear un algoritmo consiste en definir las variables (estructura de datos) que se necesitan; asignarles un nombre, identificar el uso que tendrn y determinar sus tipos de datos. Ejemplo: NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real 3. Leer, calcular e imprimir: El segundo paso de un algoritmo consiste en leer, calcular e imprimir tantas veces se requiera y en el orden que se necesite. Lectura de datos: En este punto se empiezan a introducir los datos disponibles como materia prima, mediante una operacin de lectura precedida por una solicitud de datos. Ejemplo: Leer NOMBRE, HRSTRAB, CUOTAHR

Clculos: El siguiente paso es procesar la entrada para producir la salida, mediante la ejecucin de clculos basadas en expresiones matemticas. Ejemplo: Calcular SUELDO = HRSTRAB*CUOTAHR Salida (impresin) de datos: El ltimo paso estriba en dar salida a la informacin requerida, imprimiendo las variables que la contienen. Ejemplo. Imprimir NOMBRE, SUELDO

4.

Fin del algoritmo: El ltimo paso del algoritmo consiste en incluir la indicacin de fin. Fin

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Algoritmo con la estructura de control secuencial. De ejemplo podemos retomar el ejemplo descrito en el subtema de algoritmo, para hacer nuestro primer algoritmo. Algoritmo CALCULAR SUELDO DE UN EMPLEADO 1. Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real 2. 3. 4. 5. 6. (PROGRAMA DE ALGORITMO 1)

Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR

Calcular SUELDO = HRSTRAB*CUOTAHR Imprimir Fin Estructura secuencial


INICIO

NOMBRE, SUELDO En forma de diagrama de flujo.

DAME EL NOMBRE DEL EMPLEADO. NMERO DE HORAS TRABAJADAS Y CUOTA POR HORA

NOMBRE, HRSTRAB,CUOTAHR

SUELDO = HRSTRAB*CUOTAHR

NOMBRE, SUELDO

FIN

EJERCICOS PROPUESTOS. 1.2.HACER UN ALGORITMO PARA OBTENER EL AREA, PERIMETRO DE UN TRIANGULO. HACER UN ALGORITMO QUE OBTENGA E IMPRIMA EL VALOR DE Y A PARTIR DE LA ECUACIN Y = 3X2 + 7X 15.

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

3.4.-

HACER UN ALGORITMO QUE CONVIERTA UN NMERO DADO DE SEGUNDOS EN MINUTOS Y QUE IMPRIMA EL RESULTADO. UNA TEMPERATURA EN GRADOS CENTGRADOS SE PUEDE CONVERTIR A SU EQUIVALENTE EN GRADOS FAHRENHEIT CON LA FRMULA OF =

9 5

+ 32..

5.-

HACER UN ALGORITMO QUE LEA UNA TEMPERATURA EN GRADOS CENTGRADOS Y OBTENGA E IMPRIMA LA TEMPERATURA FAHRENHEIT EQUIVALENTE. EL SIGUIENTE SISTEMA DE ECUACIONES LINEALES: ax + by = c dx + ey = f SE PUEDE RESOLVER CON LAS FRMULAS: X=

ce bf ae bd

Y=

af cd ae bd

SI ae-bd

0.

6.-

ELABORAR UN ALGORITMO QUE LEA LOS COEFICIENTES a,b,c,d,e y f, Y QUE IMPRIMA LOS VALORES DE X y Y. HACER UN ALGORITMO QUE LEA UN NMERO EN PIES Y CALCULE E IMPRIMA SU EQUIVALENTE EN YARDAS, PULGADAS, CENTMETROS Y METROS, DE ACUERDO CON LAS SIGUIENTES EQUIVALENCIAS: 1 pie=12 pulgadas, 1 yarda=3pies. 1 pulgada=2.54cm. 1 metro=100cm.

Algoritmo con la estructura de control de seleccin doble (IF-THEN-ELSE). Del ejemplo anterior, ahora vamos a suponer que si el nmero de horas trabajadas es mayor que 40, el excedente de 40 se paga al doble de la cuota por hora, en caso de no ser mayor de 40 se para la cuota normal por hora. Algoritmo CALCULAR SUELDO DE UN EMPLEADO (PROGRAMA DE ALGORITMO 2) 1 Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR

2 3 4

IF HRSTRAB > 40 THEN SUELDO = (CUOTAHR*40) + ((HRSTRAB-40) * (CUOTAHR*2)) ELSE SUELDO = HRSTRAB*CUOTAHR

6 7 8

ENDIF Imprimir Fin


EJERCICOS PROPUESTOS.

NOMBRE, SUELDO

7.-

UNA ESCUELA APLICA DOS EXAMENES A SUS ASPIRANTES, POR LO QUE CADA UNO DE ELLOS OBTIENE DOS CALIFICACIONES DENOTADAS COMO C1 Y C2. EL ASPRANTE QUE OBTENGA LAS CALIFICACIONES MAYORES QUE 80 EN AMBOS EXAMENES ES ACEPTADO; EN CASO CONTRARIO ES RECHAZADO. HACER UN ALGORITMO PARA DETERMINAR LOS ALUMNOS ACEPTADOS.

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Algoritmo con la estructura de control de seleccin sencilla (IF-THEN). Siguiendo con nuestro ejemplo: supongamos que ahora se otorga un incentivo del 5% si el empleado trabajo mas de 40 horas, esto se agrega independientemente del clculo del sueldo. Algoritmo CALCULAR SUELDO DE UN EMPLEADO 1 Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR IF HRSTRAB > 40 THEN SUELDO = (HRSTRAB*CUOTAHR)*1.05 ENDIF Imprimir NOMBRE, SUELDO (PROGRAMA DE ALGORITMO 3)

2 3 4

5 6

7 Fin Algoritmo con la estructura de control de seleccin mltiple (CASE). (PROGRAMA DE ALGORITMO 4) Ejemplo: Elabore un algoritmo que lea un valor entre 1 y 7 y despliegue DOMINGO si es 1, MARTES si es 2........, SABADO si es 7. Algoritmo DIAS DE LA SEMANA 1 Definir variables. NUM_DIA: Entero Solicitar el nmero de da Leer NUM_DIA

2 3 4

CASE(1,2,3,4,5,6,7) NUM_DIA 1: Imprimir 2: Imprimir 3: Imprimir 4: Imprimir 5: Imprimir 6: Imprimir 7: Imprimir DOMINGO LUNES MARTES MIRCOLES JUEVES VIERNES SABADO

ELSE Imprimir NO ESTA ENTRE 1 Y 7

6 7
8.9.-

ENDCASE Fin
EJERCICOS PROPUESTOS. REPETIR EL LTIMO ALGORITMO PERO USANDO LAS ESTRUCTURAS IF-ELSE. ELABORAR UN ALGORITMO PARA CALCULAR LA CALIFICACIN FINAL DE UN ALUMNO, TENIENDO COMO DATOS CUATRO CALIFICACIONES PARCIALES. IMPRIMIR NOMBRE, LA CALIFICACIN FINAL Y UN COMENTARIO DE APROBADO SI OBTIENE 60 O MAS Y REPROBADO EN CASO CONTRARIO. HACER UN ALGORITMO QUE LEA TRES NMEROS Y QUE CALCULE E IMPRIMA EL MAYOR. SE SUPONE QUE SON NMEROS DIFERENTES. ELABORE UN ALGORITMO QUE LEA EL NMERO DE MES ENTRE 1 Y 12 Y QUE IMPRIMA EL NOMBRE DEL MES CORRESPONDIENTE: SI ES 1 ENERO, SI ES 2 FEBRERO, ETC.

10.11.-

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

12.-

13.14.-

ELABORE UN ALGORITMO PARA CALCULAR E IMPRIMIR EL PRECIO DE UN TERRENO DEL CUAL SE TIENEN LOS SIGUIENTRES DATOS: LARGO, ANCHO Y PRECIO POR METRO CUADRADO. SI EL TERRENO TIENE MAS DE 400 METROS CUADRADOS SE HACE UN DESCUENTO DEL 10% . IGUAL QUE EL EJERCICIO ANTERIOR, PERO AHORA SI EL TERRENO TIENE MAS DE 500 METROS CUADRADOS EL DESCUENTO ES DEL 17% Y SI TIENE MAS DE 1000 EL DESCUENTO ES DEL 25%. ELABORE UN ALGORITMO QUE IMPRIMA EL COSTO DE UN PEDIDO DE UN ARTICULO DEL CUAL SE TIENE LA DESCRPCIN, LA CANTIDAD PEDIDA Y EL PECIO UNITARIO. SI LA CANTIDAD PEDIDA EXCEDE LAS 50 UNIDADES, SE HACE UN DESCUENTO DEL 15%. UN CLIENTE ORDENA CIERTA CANTIDAD DE LIBROS, DISCOS Y CUADERNOS; LOS LIBROS TIENEN 20% DE DESCUENTO Y LOS DISCOS 15%. LOS DATOS QUE SE TIENEN POR CADA TIPO DE ARTICULO SON: LA CANTIDAD PEDIDA Y EL PRECIO UNITARIO. ADEMS SI SE PAGA DE CONTADO TIENE UN DESCUENTO DEL 6%. ELABORAR UN ALGORITMO QUE CALCULE E IMPRIMA EL COSTO TOTAL DE LA ORDEN, TANTO PARA EL PAGO DE CONTADO COMO PARA EL CASO DE PAGO A CRDITO. UNA LIBRERA VENDE LIBROS CON LAS CONDICIONES SIGUIENTES: SI EL CLIENTE ES DEL TIPO 1 SE LE DESCUENTA EL 30%. SI EL CLIENTE ES DEL TIPO 2 SE LE DESCUENTA EL 20%. SI EL CLIENTE ES DEL TIPO 3 SE LE DESCUENTA EL 10%. CUANDO EL CLIENTE REALIZA UNA COMPRA SE GENERAN LOS SIGUIENTES DATOS: NOMBRE DEL CLIENTE. TIPO DE CLIENTE (1,2,3) CANTIDAD DE LIBROS. COSTO POR LIBRO. ELABORE UN ALGORITMO QUE LEA ESTOS DATOS Y QUE IMPRIMA LO SIGUIENTE: NOMBRE DEL CLIENTE. TOTAL A PAGAR. DESCUENTO. NETO A PAGAR. IGUAL QUE EL EJERCICIO ANTERIOR, PERO ADEMS: SI LA CANTIDAD DE LIBROS SOLICITADA ES MAYOR QUE 50, SE HACE UN DESCUENTO ADICIONAL DEL 5%, EN CASO DE SER MAYOR DE 100 EL DESCUENTO ES DEL 10%.

15.-

16.-

17.-

Algoritmo con la estructura de control REPEAT.

(PROGRAMA DE ALGORITMO 5)

Retomando el ejemplo de los sueldos. Ahora vamos a calcular el sueldo para varios empleados. Algoritmo SUELDOS DE VARIOS EMPLEADOS 1 Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real DESEA: Alfabtico [1] REPEAT Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR Calcular SUELDO = HRSTRAB*CUOTAHR Imprimir NOMBRE, SUELDO Preguntar Desea procesar otro empleado (S/N) ? Leer DESEA UNTIL DESEA = N Fin

3 4

Para el caso de que se requiera determinar el nmero total de empleados y el sueldo total pagado a todos esos empleados se har uso de un contador para el nmero de empleados y un contador para sacar el sueldo total. Algoritmo SUELDOS DE VARIOS EMPLEADOS 1 Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero
PAG. 6

(PROGRAMA DE ALGORITMO 6)

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

CUOTAHR: Real SUELDO: Real DESEA: Alfabtico [1] TOTEMP: Entero TOTSUELDO: Real 2 3 4 5 Imprimir encabezado TOTEMP=0 TOTSUELDO=0 REPEAT Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR Calcular SUELDO = HRSTRAB*CUOTAHR Imprimir NOMBRE, SUELDO TOTEMP=TOTEMP+1 TOTSUELDO=TOTSUELDO+SUELDO Preguntar Desea procesar otro empleado (S/N) ? Leer DESEA UNTIL DESEA = N Imprimir TOTEMP,TOTSUELDO Fin
EJERCICOS PROPUESTOS. 18.SE TIENE UN GRUPO DE ALUMNOS. LOS DATOS DE CADA ALUMNO SON: NOMBRE. SEXO (M,F). EDAD. ESTATURA. PESO. COLOR DE OJOS (1-AZULES. 2-CASTAO. 3-LOS DEMS). COLOR DE CABELLO (1-CASTAO. 2-RUBIO. 3- LOS DEMAS). DISEAR UN ALGORITMO QUE LEA LOS DATOS DE ENTRADA Y QUE PROPORCIONE UN LISTADO CON LOS NOMBRES DE: 1.TODAS LAS MUJERES CON CABELLO RUBIO Y OJOS AZULES QUE MIDEN ENTRE 1.65 Y 1.75 METROS Y QUE PESEN MENOS DE 55 KILOGRAMOS. TODAS LOS HOMBRES DE PELO CASTAO Y QUE MIDAN MAS DE 1.70 METROS DE ESTATURA Y QUE PESEN ENTRE 60 Y 70 KILOGRAMOS.

6 7 8

2.-

Algoritmo con la estructura de control FOR. Ejemplo: Elaborar un algoritmo que calcule e imprima la suma de los nmeros del 1 hasta el 100. Algoritmo SUMA DE NMEROS DEL 1 HASTA EL 100 (PROGRAMA DE ALGORITMO 7) 1 Definir variables. INDICE: Entero SUMATORIA: Entero FOR INDICE 1,100 SUMATORIA=SUMATORIA+1 ENDFOR Imprimir SUMATORIA

3 4

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

5
19.20.21.-. 22.-

Fin
EJERCICOS PROPUESTOS. ELABORAR UN ALGORITMO QUE CALCULE E IMPRIMA LA SUMA 1+1/2+1/3+....+1/n. ELABORE UN ALGORITMO QUE LEA N NUMEROS Y QUE DETERMINE E IMPRIMA EL PROMEDIO DE LA SUMA DE DICHOS NUMEROS. ESTIMAR LA POBLACIN ESTUDIANTIL PARA EL AO 2005 CONSIDERANDO UN CRECIMIENTO ANUAL DEL 12%. LA POBLACIN ACTUAL ES DE 750 ALUMNOS. HACER UN ALGORITMO QUE LEA UN VALOR N, ENTERO Y POSITIVO Y QUE CALCULE E IMPRIMA SU FACTORIAL. POR EJEMPLO: SI SE LEE EL 5, SU FACTORIAL ES EL PRODUCTO DE 5*4*3*2*1. EL FACTORIAL DE CERO ES UNO. ELABORAR UN ALGORITMO QUE LEA UN VALOR N Y QUE IMPRIMA UN TRIANGULO DE ASTERISCOS, COMO SE MUESTRA A CONTINUACIN, SI EL VALOR LEISO ES CINCO. * ** *** **** *****. ELABORAR UN ALGORITMO PARA CALCULAR E IMPRIMIR EL CUADRADO DE LOS NMEROS DEL 1 AL 10. ELABORAR UN ALGORITMO PARA SUMAR N NMEROS DE ENTRADA E IMPRIMIR EL TOTAL. ELABORAR UN ALGORITMO PARA CALCULAR LA CANTIDAD QUE SE TENDRA AHORRADA DESPUS DE 10 AOS SI SE DEPOSITAN MIL PESOS MENSUALMENTE A UNA TASA DE INTERES MENSUAL DEL 3% CAPITALIZABLES CADA MES, ES DECIR QUE AL CAPITAL SE LE AGREGAN LOS INTERESES. ELABORAR UN ALGORITMO PARA CALCULAR LA CANTIDAD QUE SE TENDRA AHORRADA DESPUS DE 15 AOS SI SE DEPOSITAN QUINCE MIL PESOS A UNA TASA DE INTERES MENSUAL DEL 3.7 % CAPITALIZABLE CADA MES. LA EMPRESA TELMEX A DECIDIDO INCREMENTAR LA TARIFA DE LA RENTA MENSUAL POR USO DEL TELEFONO EN 4% MENSUAL. LA TARIFA DE ABRIL DE 1999 ES DE $27.00. ELABORAR UN ALGORITMO QUE IMPRIMA EL MONTO DE LA RENTA MENSUAL PARA OCTUBRE DEL 2001. UN TRABAJO X TIENE 30 DAS DE DURACIN Y PAGAN $10.00 DIARIOS, OTRO TRABAJO TAMBIN DURA 30 DAS PERO SE PAGA COMO SIGUE: %1.00 EL PRIMER DA, $2.00 EL SEGUNDO DA, $3.00 EL TERCER DA Y AS SUCESIVAMENTE. CUL SER EL MEJOR PAGADO? ELABORAR UN ALGORITMO PARA ESTIMAR LA POBLACIN ESTUDIANTIL QUE SE ESPERA TENER EN UN DETERMINADO AO; LOS DATOS QUE SE TIENEN SON: UNA POBLACIN ACTUASL, UN PORCENTAJE DE CRECIMIENTO ANUAL ESPERADO Y SE ESTA EN UN AO ACTUAL DETERMINADO. TODOS ESTOS DATOS DEBEN DE SER LEIDOS PARA IMPRIMIR AL FINAL LO ESTIMADO.

23.-

24.25.26.-

27.28.-

29.-

30.-

Algoritmo con la estructura de control DO-WHILE (haz-mientras). Ejemplo: Elaborar un algoritmo que calcule el sueldo de varios empleados y proporcione el siguiente reporte: NOMINA QUINCENAL NOMBRE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Algoritmo SUELDOS DE EMPLEADOS 1 Definir variables. NOMBRE: Alfabtico [30] HRSTRAB: Entero CUOTAHR: Real SUELDO: Real DESEA: Alfabtico [1] Preguntar Hay empleado (S/N) ? Leer DESEA DOWHILE DESEA = S Solicitar el nombre del empleado, nmero de horas trabajadas y cuota por hora. Leer NOMBRE, HRSTRAB,CUOTAHR Calcular SUELDO = HRSTRAB*CUOTAHR Imprimir NOMBRE, SUELDO Preguntar Desea procesar otro empleado (S/N)? Leer DESEA SUELDO 99, 999,999.99

(PROGRAMA DE ALGORITMO 8)

2 4 5

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

6 7

ENDDO Fin
EJERCICOS PROPUESTOS.

31.-

ELABORAR UN ALGORITMO PARA ENLISTAR LOS NMEROS PARES ENTRE 0 Y 20 (DOWHILE N<=20).

Algoritmo con ARREGLOS UNIDIMENSIONALES. Ejemplo: Elaborar un algoritmo que lea el nombre de un vendedor y las ventas realizadas durante los 30 das del mes, que las almacene en un arreglo y que imprima el reporte siguiente. Nombre del vendedor: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Ventas del da 1: 999,999.999 Ventas del da 2: 999,999.999 Ventas del da 30: 999,999.999 Venta total del mes: 9, 999,999.999 Donde la venta total del mes se calcula mediante la suma de las ventas realizadas durante los 30 das. Algoritmo VENTA DEL MES 1 Definir variables. NOMBRE: Alfabtico [30] VENTAS: Arreglo [30] Real I: Entero TOTVENTA: Real Solicitar el nombre del vendedor Leer NOMBRE FOR I=1,30 a. b. ENDFOR 5 6 7 TOTVENTA=0 Imprimir NOMBRE FOR I=30 a. b. 8 9 ENDFOR Imprimir TOTVENTA Imprimir VENTAS[I] TOTVENTA=TOTVENTA+VENTAS[I] Solicitar la venta del da I Leer VENTAS[I] (PROGRAMA DE ALGORITMO 9)

2 3 4

10 Fin

Elaborar un algoritmo que lea los dos arreglos, cada uno con diez nmeros enteros. Calcular un tercer arreglo sumando los dos primeros de la siguiente manera: que se sume el elemento 1 del primer arreglo y el primero del segundo arreglo y que el resultado se almacene en el 1 del tercero y as sucesivamente. Adems se requiere que al final imprima los tres arreglos de la siguiente forma: Arreglo 1 + Arreglo 2 = Arreglo 3 99 99 999 99 99 999 . . . 99 99 999
PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA PAG. 9

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Algoritmo SUMA _ ARREGLOS 1 Definir variables. A, B, S: Arreglo [10] Real I: Entero FOR I=1,10 a. Solicitar I del arreglo A b. Leer A[I] c. Solicitar I del arreglo B d. Leer B[I] e. Calcular S[I]=A[I]+B[I] ENDFOR Imprimir encabezado FOR I=1,10 a. 6 7 ENDFOR Fin Imprimir A[I], B[I], S[I]

(PROGRAMA DE ALGORITMO 10)

3 4 5

Algoritmo con ARREGLOS BIDIMENSIONALES. Ejemplo: Elaborar un algoritmo que lea nmeros enteros para una matriz de 10 x 10 y que al final de cada rengln imprima la suma de todos los elementos. Algoritmo SUMA _ ARREGLOS 1 (PROGRAMA DE ALGORITMO 11)

Definir variables. MATRIZ: Arreglo [10,10] Entero REN, COL, SUMA: Entero FOR REN=1,10 a. FOR COL=1,10 1 Solicitar elemento REN, COL 2 Leer MATRIZ [REN, COL] b. ENDFOR ENDFOR FOR REN=1,10 a. b. SUMA=0 FOR COL=1,10 1 2 c. d. Imprimir MATRIZ[REN,COL] SUMA=SUMA+MATRIZ[REN,COL]

3 4

ENDFOR Imprimir SUMA

5 6

ENDFOR Fin

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

10

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Algoritmos con la programacin modular. Una vez que ya se hicieron ejemplos sencillos para poder entender las estructuras de control de la programacin estructurada. Ahora procedemos a poner un ejemplo donde se involucre el concepto de la programacin estructurada y la programacin modular.
MODULO PRINCIPAL

MODULO ALTAS

MODULO BAJAS

MODULO CAMBIOS

MODULO SALIDA

POR CLAVE

POR CONTRATO

SEMANAL

QUINCENAL

Algoritmo MODULO PRINCIPAL 1 2 Definir variables. Desplegar el men: 1.- ALTAS 2.- BAJAS 3.- CAMBIOS 4.- SALIDA Solicitar la opcin Leer opcin

3 4 5

CASE(1) Llamar ALTAS CASE(2) Llamar BAJAS CASE(3) Llamar CAMBIOS CASE(4) Llamar SALIDA

6 7 8

ELSE Imprimir ENDCASE Fin NO ESTA TU OPCIN

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

11

UNAM-FES ARAGON.

INGENIERIA MECNICA ELECTRICA TRABAJO Y EJERCICIOS PROPUESTOS PARA EL TEMA DE ALGORITMOS Y DIAGRAMAS DE FLUJO.

Algoritmo MODULO1 ALTAS 1 2 Definir variables. Desplegar el men: 1.- POR CLAVE 2.- POR CONTRATO Solicitar la opcin Leer opcin

3 4 5

CASE(1) Llamar ALTAS POR CONTRATO CASE(2) Llamar ALTAS POR CLAVE ENDCASE Fin

6 7

Algoritmo ALTAS POR CONTRATO 1 Definir variables. CLAVE : Solicitar el nombre del empleado y checar si su contrato es semanal o quincenal. Leer CLAVE

2 3 4 5 6 7

IF CLAVE=CONTRATOS_SEMANAL THEN LLAMAR ALTAS POR SEMANA ELSE LLAMAR ALTAS POR QUINCENA ENDIF Fin

BIBLIOGRAFA.

Fundamentos de programacin. Autor. Ernesto Pealosa Romero. Edit. U.N.A.M. ENEP-ARAGON. 1994 Programacin en Turbo C. Autor. Herbert, Schildt. Edit. Mc Graw Hill. 1993. Programacin estructurada. Un enfoque algortmico Autor. Leobardo Lpez R. Edit. Computec. 1994. Introduccin a la computacin Autor. Jorge Vasconsuelos Santilln. Ed. Publicaciones Cultural.2006.

PROFESOR: ING. ALEJANDRO RODRGUEZ LORENZANA

PAG.

12

También podría gustarte