Está en la página 1de 47

DIAGRAMACION Y ALGORITMOS

DIAGRAMACIN Y ALGORITMOS

SESION I

CONCEPTO DE DATO E INFORMACIN Datos: Es todo aquella representacin de una entidad y que es susceptible de tratamiento ya sea en un programa o proceso informtico. Por ejemplo nombre, apellido y edad son datos de una persona (entidad). En otras palabras un dato es la representacin de una realidad. Informacin : Mensaje valido para un receptor o resultado del procesamiento de datos. Una computadora es una simple mquina capaz de aceptar datos de entrada, procesarlos y facilitar resultados de salida (informacin). DATO INFORMACION Todo programa (software) est constituido por un conjunto de ordenes o instrucciones capaces de manipular un conjunto de datos. Esta ordenes pueden ser divididas en tres grandes bloques claramente diferenciales, estos son: 1 ENTRADA DE DATOS: En este bloque se engloban todas aquellas instrucciones que toman datos de un dispositivo o perifrico externo, depositndolos en la memoria principal de la computadora para poder ser procesados. 2 PROCESO: Engloban todas aquellas instrucciones encargadas de modificar los datos que previamente haban sido depositados en a memoria principal. Finalmente, todo los resultados obtenidos en el tratamiento de dichos datos son depositados nuevamente en la memoria principal quedando de esta manera disponible. 3 SALIDA DE RESULTADOS: Es el conjunto de instrucciones que toman los resultados finales desde la memoria principal y lo envan a dispositivos externos. Una computadora es una simple mquina capaz de aceptar datos de entrada, procesarlos y facilitar resultados de salida.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
ALGORITMOS DEFINICIN DE ALGORITMO La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe alkhowarizmi, nombre de un matemtico y astrnomo rabe que escribi un tratado sobre manipulacin de nmeros y ecuaciones en el siglo IX. Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solucin a un problema especifico. Tipos de Algoritmos Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras. Cuantitativos: Son aquellos en los que se utilizan clculos numricos para definir los pasos del proceso. Lenguajes Algortmicos Es una serie de smbolos y reglas que se utilizan para describir de manera explcita un proceso. Tipos de Lenguajes Algortmicos Grficos: Es la representacin grfica de las operaciones que realiza un algoritmo (diagrama de flujo). No Grficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocdigo). Caractersticas de un algoritmo Las caractersticas de un buen algoritmo son: Debe tener un punto particular de inicio. Debe ser definido, no debe permitir dobles interpretaciones. Debe ser general, es decir, soportar la mayora de las variantes que se puedan presentar en la definicin del problema. Debe ser finito en tamao y tiempo de ejecucin. Ejemplo:

1.Se desea construir un algoritmo que cambie la rueda de un automvil. La siguiente lista de paso le ayudar a en la construccin del algoritmo pero, para ellos debe ordenarlas en una secuencia lgica.
a. Sacar las tuercas b. Inicio c. Bajar el auto y retirar las tuercas d. Colocar repuesto e. Sacar herramientas y respuesta. f. Cerrar maletera g. Colocar tuercas h. Fin i. Abrir maletera j. Apretar turcas k. Posicionar gata y levantar l. Guardar herramientas y rueda

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
m. Retirar rueda mala n. Soltar tuercas 2.Escriba el algoritmo que soluciona los siguientes problemas cotidianos. a. Cambiar las cuatro ruedas de un vehculo. b. Guardar 20 monedas de $100 en una alcanca. c. Destapar un botellas de bebidas hasta que se terminen, es decir un nmero indefinido de botellas.

ENTIDADES PARA EL DESARROLLO DE UN ALGORITMO: DATO: Recordemos que el dato es una entidad, tratable por software, la cual puede ser procesada, a fin de obtener resultados o informacin til. Un dato est compuesto por tres partes, las cuales son: 1.Identificador: Es un nombre para referenciarlo, puede contener letras, nmeros o combinaciones de ambas, donde el primer carcter es un letra, y su nombre comnmente esta relacionado con la informacin que representa, para facilitar nuestra tarea y evitar confusiones. Ejemplo Hola Punto_Final 5puntos $punto3 Punto/2 Punto1 .P4 Vlido Vlido No vlido, comienza con un nmero Vlido Vlido Valido No vlido, comienza con el carcter .

Tipo: El tipo se refiere a la forma del dato, esto puede ser: de carcter (char), numrico (real o entero), fecha, cadena de caracteres (string), booleano (lgico, es decir, verdadero o falso). Ejemplo: Si A=12, B=3.5, C= hola, D=S, entonces las variables son del siguiente tipo: A: entero B: real C: string o cadena D: char Valor: El valor est directamente relacionado con el tipo. Ejemplo Si las siguientes variables son declaradas como: X: entero, debe almacenar un valor entero, es decir cualquier nmero del conjunto Z H: boolena, debe almacenar un valor lgico es decir, Verdadero o falso Z: real, debe almacenar cualquier nmero del conjunto de los reales (R)

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
P: char, debe almacenar slo un carcter de cualquier tipo F: String, debe almacenar una cadena de caracteres, desde dos caracteres o ms caracteres.

Constantes, Variables y expresiones


Constantes: Las constantes son valores declarados en un programa para su utilizacin posterior y poseen un valor que no varia durante el proceso de ejecucin; Ejemplo PI= 3.14, constante numrica
INACAP Direccin de rea Informtica 22

OP= s, constante char Men= hola , constante string Variables: Las variables son objetos que poseen un valor que puede ir cambiando o ser modificado a lo largo de la ejecucin del programa. Expresiones: Las expresiones son la representacin de un clculo necesario para la obtencin de un resultado. En informtica existen tres tipos de expresiones: a) Numricas: Generan un resultado numrico y se construyen mediante operadores aritmticos: Ejemplo PI*4.15+X b) Alfanumricas: Resultados alfanumricos, se construyen mediante operadores alfanumricos: Ejemplo N=Juan Don+N=Don Juan c) Booleanos: Resultados verdaderos o falso, se construyen mediante operadores relacionales y lgicos: Ejemplo A>O y B<5.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Operadores: Sirven para la construccin de expresiones. La presente tabla muestra su respectiva clasificacin.

Operadores Aritmticos: Los operadores aritmticos permiten la realizacin de operaciones matemticas con los valores (variables y constantes). Los operadores aritmticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el resultado es real. Ejemplos: 7 / 2 = 3.5 12 mod 7 = 5 4 + 2 * 5 = 14 Prioridad de los Operadores Aritmticos Todas las expresiones entre parntesis se evalan primero. Las expresiones con parntesis anidados se evalan de dentro a fuera, el parntesis ms interno se evala primero. Dentro de una misma expresin los operadores se evalan en el siguiente orden. a) ( ) Parentesis b) ^ Exponenciacin c) *, /, mod Multiplicacin, divisin, modulo. d) +, - Suma y resta. Los operadores en una misma expresin con igual nivel de prioridad se evalan de izquierda a derecha.

Ejemplos: 1.Observe el siguiente calculo respetando las prioridades 4 + 2 * 5 = 14 23 * 2 / 5 = 9.2


Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

46 / 5 = 9.2 3 + 5 * (10 - (2 + 4)) = 23 3 + 5 * (10 - 6) =23 3.5 + 5.09 - 3.5 = 5.09 2.1 * (1.5 + 3.0 * 4.1) = 28.98
Operadores Alfanumricos La operacin mas utilizado es la concatenacin representada por el signo +; La concatenacin no es mas que la unin de caracteres o cadena de caracteres, transformndola de este modo a una sola cadena. Ejemplo: Observe las siguientes concatenaciones a) 12 + 12 = 1212 b) EL RESULTADO + ES= EL RESULTADO ES c) METODO+LOGICO = METODOLOGICO d) 123+.24-+A = 123.24-A Operadores Relacinales: Se utilizan para establecer una relacin entre dos valores. Compara estos valores entre s del mismo tipo y esta comparacin produce un resultado verdadero o falso, tienen el mismo nivel de prioridad en su evaluacin. Ejemplos: Si a = 10, b = 20, c = 30 a + b > c Falso a - b < c Verdadero a - b = c Falso a * b < > c Verdadero Operadores Lgicos y las proposiciones: Los operadores lgicos, permiten entre otras cosas resolver proposiciones, donde llamaremos proposiciones a toda expresin que tenga un sentido y de la cual se puede decir que es verdadera o falsa. Esta es llamada lgica proposicional. Ejemplo: a) La quinta regin se caracteriza por ser zona minera (Esta proposicin es falsa). b) Cmo se resuelve este ejercicio? (Esta no es una proposicin) c) El caballo blanco de Napolen es blanco (Esta proposicin es verdadera). Las proposiciones pueden ser nominadas con algunas letras tales como p,q,r, etc. Las cuales pueden ser unidas por conectivos lgicos, dando origen a una expresin lgicas. Los operadores lgicos ms utilizado en la programacin es la negacin (not), los conectivos and (y) or (o). Su tablas de verdad son:

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

PSEUDOCDIGO:
Manera no grfica de resolver algoritmos

Ejercicio, Leer dos nmeros, sumarlos y obtener su resultado

Explicacin Seccin encabezado (lneas 1,2,3) Lnea 1 ->definicin del nombre, todo algoritmo debe ser identificado con un nombre Lnea 2 -> Palabra para identificar las variables a utilizar Lnea 3 -> variables utilizadas y el tipo de las mismas, para este caso de tipo entero (recordemos que los datos numricos se dividen en enteros y reales) Lnea 4 -> Damos inicio al cuero del algoritmo Lnea 5 ->La palabra escriba es una directiva de salida, es decir todo lo que se ingresa dentro de esta instruccin son comentarios o valores, que sern visualizados por el usuario, para este caso, estamos solicitando que ingrese un nmero. Lnea 6 -> La palabra lea es una directiva de entrada, significa que todo lo que se escriba dentro, ser ingresado, en este caso estamos ingresando un nmero cualquiera Lnea 7 y 8 -> repite la secuencia de las lneas 5 y 6 Lnea 9 -> Proceso, en este segmento se le asigna el valor de la suma de dos variables a una tercera (suma) Lnea 10 -> podemos observar una salida doble, es decir la primera parte un cometario y luego la variable de resultado Lnea 11-> final del algoritmo

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Para tener en cuenta Con los algoritmos, resulta ms cmodo, presentar mensajes de claridad al usuario, por ejemplo cundo decimos (por favor ingrese un nmero), en ese momento somos explcitos con lo que queremos hacer, Resumiendo Escriba ->sirve para dar a conocer mensajes o resultados Lea -> permite capturara informacin

Estructuras de Seleccin
Las estructuras de seleccin son estructuras de control utilizadas para la toma decisiones dentro de un programa. A estas estructuras se conocen tambin como estructuras selectivas o estructuras de decisin y son las siguientes: yLa estructura de seleccin simple (SI). yLa estructura de seleccin doble (SI-SINO). yEstructura de Seleccin doble en Cascada SI-SINO-SI La estructura de seleccin simple permite ejecutar una accin o un grupo de acciones slo si se cumple una determinada condicin. Si (condicional) Sentencia 1 Sentencia 2 Fin _si La estructura de seleccin doble permite seleccionar una ruta de dos rutas posibles en base a la verdad o falsedad de una condicin__ _ Si (condicional) Sentencia 1 Sentencia 2 Si_no Sentencia 1 Sentencia 2 Fin_fi

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

La estructura de seleccin doble en cascada esta formada por varias estructuras de seleccin doble SI-SINO puestas una a continuacin de otra de forma que a un SI-SINO le sigue otro SI-SINO. En la estructura de seleccin doble en cascada, las condiciones se evalan orden descendente, pasando de una condicin a otra si la condicin anterior resulta falsa. En el momento que se encuentra una condicin verdadera, se efecta accin correspondiente a dicha condicin se corta el resto de la estructura. Si todas las condiciones resultan falsas, se efectuar acciones correspondientes al SINO, que se considera como la accin por defecto. SI( condicional1 ) accion1 SINO SI( condicional2 ) accion2 _ ((_ SINO SI( condicional3 ) accion3 . . . SINO

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejemplo 3 Variacin del ejercicio anterior, que pasa si los nmeros son iguales Entonces una posible solucin es la siguiente 1. Algoritmo mayor_v1 2. var 3. a,b:entero 4. inicio 5. Escriba(Por Favor entre un nmero); 6. Lea(a); 7. Escriba(por favor entre el segundo nmero); 8. Lea (b); 9. Si (a=b) 10. escriba (los Nmeros son Iguales); 11. fin_si 12. Si (a>b) 13. escriba (El mayor es :, a); 14. fin_si 15. Si (a<b) 16. escriba(el mayor es :,b); 17. fin_si 18. fin

Por favor discuta y analice con su compaeros de grupo, porque en este ejercicio se emplearon 3 condicionales?, Existen otras formas de resolverlo?

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Estructuras de secuencia Ciclos o Bucles Este tipo de estructuras marcan como orden de ejecucin la reiteracin de una serie de acciones basndose en un bucle. Un BUCLE (loop, en ingls) es un trozo de algoritmo cuyas instrucciones son repetidas un cierto nmero de veces, mientras se cumple una cierta condicin que ha de ser claramente especificada. La condicin podr ser verdadera o falsa, y se comprobar en cada paso o iteracin del bucle. Bsicamente, existen tres tipos de estructuras repetitivas: Desde o Para: este tipo de ciclo es ideal cuando se conoce la cantidad de veces que se desea ejecutar una accin

Tambin se hace necesario conocer otros conceptos que se manejan mucho cuando hablamos de ciclos o bucle ellos son:
 yDecisin: donde se evala la condicin y, en caso de ser cierta, se

ejecuta.
 yCuerpo del bucle: son las instrucciones que queremos ejecutar

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

repetidamente un cierto nmero de veces.


 ySalida del bucle: es la condicin que dice cundo saldremos de hacer

repeticiones (caminar mientras encuentro un silln, en el momento de encontrar un sillon dejo de caminar y he salido del ciclo). Una forma de controlar un bucle es mediante una variable llamada CONTADOR, cuyo valor se incrementa o decremento en una cantidad constante en cada repeticin que se produzca. Tambin, en los bucles suele haber otro tipo de variables llamadas ACUMULADOR, cuya misin es almacenar una cantidad variable resultante de operaciones sucesivas y repetidas. Es como un contador, con la diferencia que el incremento/decremento es variable.

CICLO PARA O DESDE


La estructura repetitiva PARA DESDE permite que las instrucciones las cuales contiene en su mbito, se ejecuten un nmero de veces determinado Una variable de control, que llamamos contador, se incrementa o decrementa esde un valor inicial hasta un valor final. Supondremos un incremento de uno en uno y decrementos de menos uno en menos uno. Bueno para ser explicito, lo mejor es realizar un ejercicio donde se comprenda todos los conceptos mencionados hasta el momento. Ejercicio Realizar un algoritmo que sume los 10 primeros nmeros naturales e imprima su resultado. Anlisis 1. los nmeros naturales se tomaran del 1 al 10 2. como se conoce la cantidad de veces que hay que sumar los nmeros, lo mejor es utilizar el ciclo desde o para 3. como se necesita sumar los nmeros, lo mejor es utilizar un acumulador 4. En este caso, los nmeros se conocen, por lo tanto no habra que capturar ningn valor

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Explicacin Lnea 5 -> es importante inicializar las variables que sern utilizadas como acumuladores Lnea 6 -> instruccin del ciclo bsico desde el nmero 1 hasta el 10, en este caso la variable k se comporta como un contador Lnea 7-> Al valor anterior que tiene la variable suma, le acumulamos un nuevo valor, como puede observarse en la prueba de escritorio Lnea 8-> todo ciclo al igual que todo condicional se debe cerrar Lnea 9-> esta lnea, se hubiese podido colocar antes de cerrar el ciclo, pero se imprimira 10 un resultado Ejercicio 2 Una pequea variacin al ejercicio anterior Realizar la suma de 10 nmeros cualesquiera e imprimir su resultado Anlisis 1.- Para este caso se saben cuantos nmeros sern los sumados, por lo cual se recomienda utilizar nuevamente el ciclo para 2.- No se sabe cuales son los nmeros, por lo tanto hay que capturarlos 3.- se aumentar una variable, la que captura los nmeros

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejercicio Realizar un algoritmo que permita ingresar 10 nmeros, de los cuales se debe sumar aquellos que son positivos y contar los que son negativos, imprimir los resultados Anlisis 1.-Al igual que los ejercicios anteriores, se sabe cuantos nmeros son 2.-Nuevamente el ciclo recomendado es el ciclo para o desde (desde i=1 hasta 10) 3.-Se complica un poco, pues se pide sumar y contar dependiendo el nmero 4.-Tendremos que utilizar una variable para contar y otra para acumular 5.-es necesario dentro del ciclo tomar una decisin

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Explicacin Lnea 6-> inicializamos en cero la variable que utilizamos como contador de nmeros negativos Lnea 10-> condicionamos el nmero ledo, par determinar si es positivo o negativo, en el caso de ser positivos lo sumamos en la lnea 11, en el caso de ser negativo lo contamos en la lnea 13 EJERCICIOS DE VERIFICACIN Desarrollar el siguiente taller (grupos de 3 personas) 1.-Realizar un algoritmo que permita leer 20 temperaturas (grados C) diferentes durante un da, se debe indicar cual fue la temperatura el promedio de ese da 2.-Una empresa que cuenta con n empleados desea realizar algunos clculos para la nueva nmina. Los datos con que cuenta son los sueldos de los n empleados: n, s1, s2, s3, ..., sn. Elabore un algoritmo de para leer los datos y contestar a las siguientes preguntas: a) Cul es el aumento correspondiente a cada empleado segn el siguiente criterio? 17% si el sueldo es inferior a $5,000
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

10% si el sueldo est entre $5,000 y $15,000 5% si el sueldo es superior a $15,000 b) Cul es el nuevo sueldo para cada empleado? c) Cul es el total de la nueva nmina? d) Cul es el incremento en la nmina? e) Cul es el mximo sueldo nuevo? f) Cul es el mnimo sueldo nuevo? Se sugiere leer la variable k para determinar la cantidad de empleados antes de hincar el ciclo 3.-se desea desarrollar un algoritmo que permita, desarrollar la tabla de multiplicar de un determinado nmero (la tabla bsica va de 1 a 9); 4.-Variacin del ejercicio anterior, se debe desarrollar un algoritmo que permita mostrar las tablas del 1 al 9 5.-Se desea construir un algoritmo que permita imprimir el resultado del factorial de un nmero dado (factorial =n!); 6.- una empresa con 20 empleados desea saber cuantos ganan menos de un salario mnimo, cuantos tienen un salario entre uno y dos salarios mnimos y cuantos ganan ms de tres salarios mnimos, adems cual es el valor actual de la nomina de la empresa, cuanto aumentar la nomina mensual si se hace incrementos as; 20% a aquellos que gana menos de un salario mnimo, 10% a los que ganan entre 1 y dos salarios mnimos y 5% a quienes gana ms de 3 salarios mnimos. Se deben realizar los clculos, teniendo en cuenta el valor del salario mnimo legal vigente 7.-Se desea desarrollar un algoritmo que permita determinar e imprimir el promedio de las edades de los alumnos de el curso algoritmos de este Cead, a dems se debe aprovechar la consulta para determina cuantos son casados, cuanto viven en unin libre, cuantos solteros, cuantos son viudos, cuantos vienen de otras ciudades, cuantos conocen la misin de la Unad, si lo desean lo pueden clasificar por gneros. La realizacin de este ejercicio con datos reales podr conocer un poco ms a sus compaeros de curso 8.-Consultar informacin referente a los ciclos mientras y el ciclo Repita

Ciclo Mientras

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Controla la ejecucin de un conjunto de instrucciones de tal forma que ste se ejecuta mientras se cumpla la condicin de control que aparece al comienzo de la instruccin. Es decir funciona siempre y cuando la condicin sea verdadera. Ejemplo Se debe desarrollar un algoritmo que este permita ingresar las notas del curso de algoritmos, el programa debe terminar cuando la nota ingresada es cero (cero), luego mostrar el promedio de las notas ingresadas Anlisis 1. En este ejercicio no se sabe la cantidad de notas 2.-Se sabe que se termina cuando una de las notas ingresada es cero 3.-Se debe utilizar un contador, para determinar el nmero de notas ingresadas 4.-tambin se debe utilizar un acumulador para sumar cada nota 5.-se utilizara una variable extra si es del caso para obtener el promedio.

Explicacin
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Lnea 4-> no olvidemos que en algunos casos no se debe emplear nmeros enteros Lnea 6 -> se pude emplear una lnea para realizar varias actividades Lnea 7 -> se da inicio al ciclo con el condicional, para este caso que la nota sea diferente a 0, la sentencia diferente tambin se puede representar como (!=) Lnea 10. Es importante el condicional para controlar que solo recibamos nmeros positivos Lnea 14->todo ciclo se debe cerrar

CICLO REPETIR HASTA


Controla la ejecucin de un conjunto de instrucciones de tal forma que ste se ejecuta hasta que se cumpla la condicin de control que aparece al final de la instruccin. Ejercicio Se realza una variacin al ejercicio anterior Las notas permitidas son nicamente, nmeros positivos comprendidos entre 0.1 y cinco. Con este ejercicio se pretende abordar un tema de mucha importancia, como son los filtros, los cuales solo permiten el ingreso de unos determinados valores, en caso de que esos valores no sean validos se generara mensajes de error, Con este planteamiento, podemos involucrar los dos ciclos Anlisis 1.-El anlisis prcticamente es el mismo anterior, solo que se debe tener en cuenta las notas permitidas (0.1 a 5.0) 2.-En caso de no ser una nota permitida el algoritmo emitir un mensaje y pedir un nuevo nmero

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Explicacin De la lnea 8 a la 14 esta controlada por el ciclo repita ..hasta Lnea 11-> este condicional permite generar un mensaje de error, si la nota esta fuera del rango establecido Lnea 14, termina el ciclo repita con una condicin de verificacin Lnea 15->, por qu validar que la nota sea diferente de 0,?. Bueno la respuesta es que el cero es nuestro valor CENTINELA o BANDERA y no lo estamos teniendo en cuenta dentro del ciclo repita ni en el condicional Observacin importante, en este ejercicio, hemos empleado los conectores lgicos, para este caso el conector o lo podemos observar en las lneas 11 y 14, se sugiere consultar ms referente a estos conectores

Ejercicios de verificacin Evidencia: documento con informe de la actividad, y registro en el portafolio 1.-Determine cul es la diferencia entre: a) contador y acumulador b) ciclo para y ciclo mientras d) ciclo mientras y ciclo repita e) condicional y ciclo En un periodo acadmico existen 45 alumnos y cada uno de ellos tiene 4 calificaciones, correspondientes a 5 diferentes cursos. Se requiere encontrar: _ El promedio de cada estudiante. _ el promedio general del curso (=promedio de los promedios). d) se debe realizar una mejora al algoritmo anterior, permitiendo controlar para cada alumno n cursos, se debe imprimir los mismos tems e) Para las elecciones presidenciales que se realizarn en Colombia, existen tres partidos polticos aspirando con sus candidatos (1, 2,3). Uno de estos ha decidido realizar una consulta (encuesta) a un cierto nmero de personas, para determinar las preferencias de los electores A cada persona se le pregunta: Si va a votar, En caso de que la respuesta se afirmativa, se le preguntar por qu partido votar. Elaborar un algoritmo, para llevar un control de la informacin y as
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

obtener unos resultados con prontitud Nota: el dato partido solamente se lee si la persona entrevistada ha contestado que s votar. El algoritmo imprimir la siguiente informacin: _ Cul es el partido que esta repuntando? _ cul es % de abstencin? _ Cul es % a favor de cada partido, teniendo en cuenta, las entrevistas validas? _ cual es el % de personas que SI votaran? f) Realizar un algoritmo que permita determinar si un nmero es par o impar, teniendo en cuenta las siguientes condiciones: Solo se admiten nmeros positivos Solo se evalan nmeros entre 1000 y 147890, cualquier otro nmero genera una advertencia de error El algoritmo, termina cuando el usuario decide no ingresar ms nmeros (Desea continuar S/N) g) Un almacn desea obtener una serie de informes diarios a partir de las ventas realizadas en un da. Elabore un algoritmo que: Solicite el cdigo del artculo El valor unitario La cantidad de artculos El cdigo para terminar es -999 Se desconoce el nmero de ventas que se realizan en un da, por lo que el final de los datos se indica con un 1. Suponga que el IVA es del 15%.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

DIAGRAMA DE FLUJO
Para el diseo de algoritmos se utilizan tcnicas de representacin. Una de estas tcnicas son los denominados diagramas de flujo, que se definen como la representacin grfica que mediante el uso de smbolos estndar conectados o unidos mediante lneas de flujo, muestran la secuencia lgica de las operaciones o acciones que debe realizar un ordenador, as como la corriente o flujo de datos en la resolucin de problema. Algunos smbolos correspondientes a operaciones de proceso son:

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejemplo:

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Recorrer el siguiente diagrama de flujo, considerando N1=4.5, N2=5.5, N3=6.5, el valor de P es 5.5, como el mayor que 3.9, la ruta continua por la alternativa NO por lo tanto se imprime la cadena Aprobado.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Recomendaciones para el diseo de Diagramas de Flujo


Se deben usar solamente lneas de flujo horizontales y/o verticales. Se debe evitar el cruce de lneas utilizando los conectores. Se deben usar conectores solo cuando sea necesario. No deben quedar lneas de flujo sin conectar. Se deben trazar los smbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha. Todo texto escrito dentro de un smbolo deber ser escrito claramente, evitando el uso de muchas palabras. Ejercicios: a) Crear un algoritmo en diagrama de flujo que al leer un nmero entero positivo (asuma que el nmero cumple las condiciones), imprimir PAR si el nmero es par e IMPAR si es impar. b) Supongamos que el I.P.C. de los meses de Febrero y Marzo fueron 0.3% y 0.6% respectivamente. Crear un algoritmo en diagrama de flujo que muestre el valor de un producto actualizado y la diferencia de precio entre el mes de febrero y Marzo. c) Confeccione un algoritmo en diagrama de flujo que al leer el neto de una factura, calcule el I.V.A. y de cmo salida el total de la factura. d) Crear un algoritmo en diagrama de flujo que al ingresar dos nmeros imprima el mayor de ellos o IGUALES si son iguales. e) Confeccionar un algoritmo en diagrama de flujo que imprimir el salario reajustado de un trabajador segn las siguientes categoras. b.1. 36000 - 60.000 20% b.2. 60001 80000 15% b.3. 80001 - 120000 10% b.4. 120001 y ms 8% f) En una financiera utilizan la formula Cf=N*I*Ci+Ci para calcular el capital final de un ahorrante a un inters simple. Si I = Inters en (%) , N = Meses, Ci = Capital inicial Crear los siguientes un algoritmo en Pseudolenguaje:

Al ingresar el capital inicial, los aos y el inters simple, la salida sea el capital final. Al ingresar los meses, capital inicial y final de como salida el inters. Al ingresar el inters, capital inicial y final de como salida la cantidad de meses.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
g) Recorra (rutee) el siguiente diagrama de flujo

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

ESTRUCTURAS DE PROGRAMACIN.
ESTRUCTURAS BASICAS

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Ejemplo: 1. Realice un algoritmo para ingresar el Nombre y el sueldo base de un empleado. Calcular el sueldo lquido y mostrar el resultado con un mensaje correspondiente. Considere el sueldo lquido como el 80% del sueldo base. Mire: Entienda el problema Se desea imprimir el sueldo lquido de un empleado. Determinar lo que se intenta hacer Se debe ingresar el nombre del empleado y su sueldo base, es decir sin descuentos para luego calcular el sueldo liquido e imprimirlo. Identifique los datos importantes Nombre del empleado. Sueldo base. Planee: Construya un plan Lea el nombre del empleado en una variable alfanumrica. Lea el sueldo base del empleado en una variable entera. Calcular el sueldo liquido y almacenar en una variable real. Sueldo liquido sueldo base por 0.8 Escribir un mensaje y el resultado. Construya un ejemplo: Nombre = Juan Prez Sueldo base = 500 000 Sueldo Liquido = 500 000*0.8=400 000

Solucin: PROGRAMA Sueldo_Lquido VARIABLES Nombre : Alfabtico Sbase : Entero Liquido : Real INICIO Escribir (Ingrese Nombre Empleado) Leer (Nombre) Escribir (Ingrese Sueldo Base) Leer(Sbase) Liquido = Sbase* 0.8 Escribir(El Sueldo Lquido de , Nombre, Es , Liquido) FIN

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Realizar un diagrama que permita determinar cual es el mayor de 2 nmeros Anlisis Para determinar cual es el mayor de dos nmeros, debemos primero conocer los nmeros, para el caso se deben leer (A,B), luego realizar la comparacin, si a> b, entonces el mayor es A, en caso contrario el mayor es B:

Una pregunta que nace del ejercicio anterior es, qu pasa cuando son iguales? Para ese caso necesitamos de un segundo condicional que verifique si las dos variables son iguales (a=b)
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejercicios de verificacin Realizar el anlisis, diagrama de flujo y prueba de escritorio, para los siguientes Planteamientos 1.-determinar cual es el cuadrado, de un determinado nmero 2.-Elaborar un diagrama de flujo que permita determinar si un nmero es Positivo o Negativo 3.-Ejercicio de conversin, desarrollar un diagrama, que perita ingresar una cantidad en metros y la convierta a Centmetros, Kilmetros, Pies, pulgadas.. 3.-Leer una determinada temperatura en grados centgrados y convertirla a Fahrenheit 4.-una persona es apta para prestar el servicio militar obligatorio (presente), cuando: es mayor de 18 aos, menor de 25 aos, nacionalidad Colombiana y gnero masculino. Realizar un diagrama que permita determinar si una persona es apta o no par prestar el servicio militar 5.- Elabore un diagrama de flujo que teniendo como datos de entrada el radio y la altura de un cilindro calcule el rea total y el volumen del cilindro 6 Una persona recibe un prstamo de un banco por un ao y desea saber cunto pagar de inters al terminar el prstamo si se sabe que el banco le cobra una tasa del 1.8% mensual. Realice un diagrama de flujo que permita determinar este monto 7.- Elaborar un diagrama de flujo, que permita ingresar 3 valores y los imprima en forma descendente
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

8.- Una empresa desea conocer el monto de comisin correspondiente a una venta realizada por un vendedor bajo las siguientes condiciones. Si la venta es menor a $1,000.00, se le otorga el 3% de comisin. Si la venta es de $1,000.00 o ms, el vendedor recibe el 5% de comisin 9.-Una empresa ha decidido, realizar aumentos de salario a sus trabajadores de acuerdo a las siguientes categoras Sindicalizado 20% De confianza 10% Alto directivo 5% Ejecutivo 0% Usted debe desarrollar un diagrama que perita ingresar la categora, el salario actual y calcular el nuevo salario.
Ejemplo: 2. Realice un algoritmo el cual permita obtener los clculos de una venta de televisores, donde hay que ingresar la cantidad de TV y su valor unitario, este algoritmo debe considerar: S el monto de la venta es mayor que $ 50 000 se aplica un descuento a la venta de 3%, imprimir el valor descontado. Calculo del impuesto IVA que es un 18% sobre la venta total. Por ultimo imprima la venta bruta que es la venta total ms el IVA calculado anteriormente. Mire: Entienda el problema Hay que ingresar la cantidad de TV y su valor analizar si corresponde descuento, calcular el IVA e imprimir el total de la venta. Determinar lo que se intenta hacer Se quiere imprimir el descuento (si corresponde ) y la venta total de la venta de TV. Identifique los datos importantes Nmero de TV. Valor unitario de TV. Planee: Construya un plan Ingrese cantidad de TV en una variable entera. Ingrese valor unitario de TV en una variable entera. Calcule el total de la venta: Multiplicar Cantidad de TV por el valor unitario de estos y almacenar el resultado en una variable real . Preguntar si la venta es mayor que 50000 realizar descuento y guardar el resultado. Imprimir el resultado del descuento. Calcular el iva y guardar el resultado en una variable real. Obtener vanta bruta: Sumar venta ms iva y guardar en una variable real. Imprimir venta bruta con un mensaje adecuado.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Construya un ejemplo: a) N de TV 5, valor unitario $ 12000 La venta es 5*12000=60000 Descuento 60000*0.03=1800 Nueva venta 60000-1800=58200 Iva: 58200*0.18= 10476 Venta brutal es: 58200 + 10476= 68676. b) N de Tv 5, valor unitario $ 8000 La venta es 5*8000=40000 No hay descuento Iva: 40000*0.18=7200 Venta brutal es: 40000 + 7200= 47200. Solucin: PROGRAMA Venta_TV VARIABLES Ct, Vut: Entero Venta, IVA, Vbruta, Dcto: Real INICIO Escribir(Ingrese cantidad de TV), Leer(Ct) Escribir(Ingrese valor unitario de TV), Leer(Vut) Venta = Ct * Vut Si (Venta > 50000) Entonces Dcto= Venta*0.03 Venta = Venta - Dcto Escribir(El descuento es: Dcto) Fin Si IVA = Venta * 0.18 Vbruta = Venta + IVA Escribir(Venta Bruta Es:", Vbruta) FIN

INSTRUCCION DE ALTERNATIVA DOBLE

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejemplo: Realice un algoritmo el cual permita obtener los clculos de una venta de televisores, donde hay que ingresar la cantidad de TV y su valor unitario, este algoritmo debe considerar: S el monto de la venta es mayor que $ 100 000 se aplica un descuento a la venta de 5%, imprimir el valor descontado. S el monto de la venta es menor o igual que $ 100 000 se aplica un descuento a la venta de 3%, imprimir el valor descontado. Calculo del impuesto IVA que es un 18% sobre la venta total. Por ultimo imprima la venta bruta que es la venta total ms el IVA calculado anteriormente. Mire: Entienda el problema Hay que ingresar la cantidad de TV y su valor analizar si corresponde un descuento de 5% o 3% , luego calcular el IVA e imprimir el total de la venta. Determinar lo que se intenta hacer Se quiere imprimir el descuento correspondiente y el monto de la venta total de TV. Identifique los datos importantes Nmero de TV. Valor unitario de TV.

Construya un ejemplo: a) N de TV 5, valor unitario $ 12000 La venta es 5*12000=60000 Descuento 60000*0.03=1800 Nueva venta 60000-1800=58200

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Iva: 58200*0.18= 10476 Venta brutal es: 58200 + 10476= 68676. b) N de Tv 10, valor unitario $ 20000 La venta es 10*20000=200000 Descuento 200000*0.05=10000 Nueva venta 200000-10000=190000 Iva: 190000*0.18=34200 Venta brutal es: 190000 + 34200= 155800 Solucin:

PROGRAMA Venta_TV2 VARIABLES Ct, Vut: Entero Venta, IVA, Vbruta, Dcto: Real INICIO Escribir(Ingrese cantidad de TV), Leer(Ct) Escribir(Ingrese valor unitario de TV), Leer(Vut) Venta = Ct * Vut Si (Venta > 100000) Entonces Dcto= Venta*0.05 Venta = Venta Dcto Sino Dcto= Venta*0.03 Venta = Venta Dcto Fin Si Escribir(El descuento es: Dcto) IVA = Venta * 0.18 Vbruta = Venta + IVA Escribir(Venta Bruta Es:", Vbruta) FIN

EJERCICIOS PROPUESTOS DE ALTERNATIVA SIMPLE, DOBLE Y MULTIPLE

1) Suponga que un individuo desea invertir su capital en un banco y desea saber cuanto dinero ganara despus de un mes si el banco paga a razn de 2% mensual. 2) Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus ventas, el vendedor desea saber cuanto dinero obtendr por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibir en el mes tomando en cuenta su sueldo base y comisiones. 3) Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deber pagar finalmente por su compra. 4) Un alumno desea saber cual ser su calificacin final en la materia de
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Algoritmos. Dicha calificacin se compone de los siguientes porcentajes: 55% del promedio de sus tres calificaciones parciales. 30% de la calificacin del examen final. 15% de la calificacin de un trabajo final. 5) Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes. 6) Realizar un algoritmo que calcule la edad de una persona. 7) Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que tiene en inversin en el banco. El decidir reinvertir los intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendr finalmente en su cuenta. 8) Determinar si un alumno aprueba a reprueba un curso, sabiendo que aprobara si su promedio de tres calificaciones es mayor o igual a 70; reprueba en caso contrario. 9) En un almacn se hace un 20% de descuento a los clientes cuya compra supere los $1000 Cual ser la cantidad que pagara una persona por su compra? 10) Un obrero necesita calcular su salario semanal, el cual se obtiene de la sig. manera: Si trabaja 40 horas o menos se le paga $16 por hora
INACAP Direccin de rea Informtica 44

Si trabaja mas de 40 horas se le paga $16 por cada una de las primeras 40 horas y $20 por cada hora extra. 11) Un hombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que tiene en inversin en el banco. El decidir reinvertir los intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber cuanto dinero tendr finalmente en su cuenta. 12) Que lea dos nmeros y los imprima en forma ascendente 13) Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuantas caloras consume su cuerpo durante todo el tiempo que realice una misma actividad. Las actividades que tiene permitido realizar son nicamente dormir o estar sentado en reposo. Los datos que tiene son que estando dormido consume 1.08 caloras por minuto y estando sentado en reposo consume 1.66 caloras por minuto. 14) Hacer un algoritmo que imprima el nombre de un articulo, clave, precio original y su precio con descuento. El descuento lo hace en base a la clave, si la clave es 01 el descuento es del 10% y si la clave es 02 el descuento en del 20% (solo existen dos claves). 15) Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se compran tres camisas o mas se aplica un descuento del 20% sobre el total de la compra y si son menos de tres camisas un descuento del 10% 16) Una empresa quiere hacer una compra de varias piezas de la misma clase a una fabrica de refacciones. La empresa, dependiendo del monto total de la compra, decidir que hacer para pagar al fabricante. Si el monto total de la compra excede de $500 000 la empresa tendr la capacidad de invertir de su propio dinero un 55% del monto de la compra, pedir prestado al banco un 30% y el resto lo pagara solicitando un crdito al fabricante. Si el monto total de la compra no excede de $500 000 la empresa tendr Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagara solicitando crdito al fabricante. El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se le pague a crdito. 17) Leer 2 nmeros; si son iguales que los multiplique, si el primero es mayor que el segundo que los reste y si no que los sume. 18) Leer tres nmeros diferentes e imprimir el numero mayor de los tres. 19) Determinar la cantidad de dinero que recibir un trabajador por concepto de las horas extras trabajadas en una empresa, sabiendo que cuando las horas de
INACAP Direccin de rea Informtica 45

trabajo exceden de 40, el resto se consideran horas extras y que estas se pagan al doble de una hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se pagan las horas normales y el resto al triple. 20) Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si este se le asigna como un porcentaje de su salario mensual que depende de su antigedad en la empresa de acuerdo con la sig. tabla: Tiempo Utilidad Menos de 1 ao 5 % del salario 1 ao o mas y menos de 2 aos 7% del salario 2 aos o mas y menos de 5 aos 10% del salario 5 aos o mas y menos de 10 aos 15% del salario 10 aos o mas 20% del salario 21) En una tienda de descuento se efecta una promocin en la cual se hace un descuento sobre el valor de la compra total segn el color de la bolita que el cliente saque al pagar en caja. Si la bolita es de color blanco no se le har descuento alguno, si es verde se le har un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si es roja un 100%. Determinar la cantidad final que el cliente deber pagar por su compra. se sabe que solo hay bolitas de los colores mencionados. 22) El IMSS requiere clasificar a las personas que se jubilaran en el ao de 1997. Existen tres tipos de jubilaciones: por edad, por antigedad joven y por antigedad adulta. Las personas adscritas a la jubilacin por edad deben tener 60 aos o mas y una antigedad en su empleo de menos de 25 aos. Las personas adscritas a la jubilacin por antigedad joven deben tener menos de 60 aos y una antigedad en su empleo de 25 aos o mas. Las personas adscritas a la jubilacin por antigedad adulta deben tener 60 aos o mas y una antigedad en su empleo de 25 aos o mas. Determinar en que tipo de jubilacin, quedara adscrita una persona.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

ESTRUCTURAS CCLICAS O DE ITERACIN


CONCEPTOS Contadores: Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o accin. Los contadores se utilizan en las estructuras de repeticin con la finalidad de contar sucesos o acciones internas del bucle; deben realizar una operacin de inicializacin y, posteriormente, las sucesivas de incrementacin o decrementacin del contador. La inicializacin consiste en asignar al contador un valor inicial. Se situar antes y fuera del bucle la inicializacin. Su estructura es la siguiente. Nombre_del_contador=valor_inicial En cuanto a los incrementos o decrementos del contador, puesto que la operacin de asignacin admite que la variable que recibe el valor final de una expresin intervenga en la misma, se realizarn a travs de este tipo de instruccin de asignacin, de la siguiente forma: (incremento) Nombre_del_contador = Nombre_del_contador + valor_constante (decremento) Nombre_del_contador = Nombre_del_contador - valor_constante Acumulador: Son variables cuyo valor se incrementa o decrementa en una cantidad variable, al igual que los contadores tambin necesitan inicilizarce fuera del bucle, esto es: Nombre_del_acumulador=valor_inicial Su operacin dentro del bucle queda definida en la siguiente expresin: Nombre_del_acumuladorr = Nombre_del_acumulador + nombre_variable

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

INSTRUCCIN MIENTRAS

Ejemplo: 5. Escriba un algoritmo que permita obtener la nota final de cada uno de los 20 alumnos de un curso y el promedio general del curso. Para ello, se debe ingresar el promedio del semestre y la nota del examen de cada alumno, considerando lo siguiente: El Promedio General Equivale Al 60% De La Nota Final. El Examen Equivale Al 40 % De La Nota Final. Mire: Entienda el problema Se necesita calcular la nota final de cada alumno y luego con estas notas calcular el promedio del curso. Hay que imprimir el promedio de cada alumno y el promedio del curso. Determinar lo que se intenta hacer Hay que ingresar 20 veces el promedio semestral y la nota examen de cada, adems se debe calcular el promedio del curso. Identifique los datos importantes Se debe tener un contador que permita controlar que el proceso se repita 20 veces. Se debe ingresar el promedio del semestre y la nota del examen. Planee: Construya un plan Se debe inicializar un contador con el valor 1. Leer dentro del ciclo promedio semestral y nota del examen. Calcular e imprimir, dentro del ciclo ,la nota de cada alumno Acumular dentro del ciclo las notas de cada alumno Calcular el promedio del curso fuera del ciclo

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Construya un ejemplo: Este ejemplo considera 3 alumnos pero se puede proyectar para 20. Alumno PS Examen Nota Final Alu-1 5.0 6.0 5.0*0.6 + 6.0*0.4 = 5.4 Alu-2 4.0 5.5 4.0*0.6 + 5..5*0.4 = 4.6 Alu-3 3.0 7.0 3.0*0.6 + 7.0*0.4 = 4.6 Suma= 5.4+4.6+4.6=14.6 Promedio= 14.6/3=4,86 SOLUCION PROGRAMA Notas VARIABLES Num : Entero Sum,Prom,Nota : Real INICIO Num = 1 Sum = 0 Mientras ( Num <= 20 ) Hacer Escribir(Ingrese Promedio Semestral) Leer (Prom) Escribir(Ingrese Nota Examen) Leer(Ex) Nota = (Prom * 0.6) + (Ex * 0.4) Sum=Sum + Nota Escribir(El promedio es: ,Nota) Num = Num + 1 Fin Mientras Prom=Sum/20 Escribir(El promedio general del Curso es, Prom) FIN

INSTRUCCIN REPETIR

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

Ejemplo: Escriba un algoritmo que permita obtener la nota final de cada uno de los 20 alumnos de un curso y el promedio general del curso. Para ello, se debe ingresar el promedio del semestre y la nota del examen de cada alumno, considerando lo siguiente: Se deben Validar las notas. El Promedio General Equivale Al 60% De La Nota Final. El Examen Equivale Al 40 % De La Nota Final. Mire: Entienda el problema Se necesita calcular la nota final de cada alumno y luego con estas notas calcular el promedio del curso. Hay que imprimir el promedio de cada alumno y el promedio del curso. Determinar lo que se intenta hacer Hay que ingresar 20 veces el promedio semestral y la nota examen de cada alumno, adems se debe calcular el promedio del curso. Identifique los datos importantes Se debe tener un contador que permita controlar que el proceso se repita 20 veces. Se debe ingresar el promedio del semestre y la nota del examen. Planee: Construya un plan Se debe inicializar un contador con el valor 1. Leer dentro del ciclo promedio semestral y nota del examen. Validar que la nota semestral y del examen este entre 1 y 7 Calcular e imprimir, dentro del ciclo ,la nota de cada alumno Acumular dentro del ciclo las notas de cada alumno Calcular el promedio del curso fuera del ciclo

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Construya un ejemplo: Este ejemplo considera 3 alumnos pero se puede proyectar para 20. Alumno PS Examen Nota Final Alu-1 5.0 6.0 5.0*0.6 + 6.0*0.4 = 5.4 Alu-2 4.0 5.5 4.0*0.6 + 5..5*0.4 = 4.6 Alu-3 3.0 7.0 3.0*0.6 + 7.0*0.4 = 4.6 Suma= 5.4+4.6+4.6=14.6 Promedio= 14.6/3=4,86 Solucin: PROGRAMA Notas VARIABLES Num : Entero Sum,Prom,Nota : Real INICIO Num = 1 Sum = 0 Mientras ( Num <= 20 ) Hacer Repetir Escribir(Ingrese Promedio Semestral) Leer (Prom)
Hasta (Prom>=1 and Prom<=7)

Repetir Escribir(Ingrese Nota Examen) Leer(Ex)


Hasta (Prom>=1 and Prom<=7)

Nota = (Prom * 0.6) + (Ex * 0.4) Sum=Sum + Nota Escribir(El promedio es: ,Nota) Num = Num + 1 Fin Mientras Prom=Sum/20 Escribir(El promedio general del Curso es, Prom) FIN

A continuacin se mostrara el ejemplo del programa Boletos de Viaje pero validando el destino y la clase con la instruccin Repetir. De esta forma no necesitaremos el interruptor. PROGRAMA Boletos de Viaje2 VARIABLES Coddes, Precio : Entero Nombre, Regin, clase : Alfanumrico INICIO Escribir (Ingrese Nombre Del Cliente) Leer(NomCli) Repetir Escribir(Ingrese Cdigo De Destino)) Leer(Coddes)

Hasta (Coddes>=1 and Coddes<=5)

Repetir Escribir(Ingrese Clase E:ejecutiva, T:turista)

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS
Leer(Clase)

Hasta (Clase<>E or Clase<>T)


Opcin Coddes de 1 : Hacer Regin=Primera Regin Precio=100 000 2: Hacer Regin=Segunda Regin Precio=80 000 3: Hacer Regin=Tercera Regin Precio=60 000 4: Hacer Regin=Cuarta Regin Precio=40 000 5: Hacer Regin=Quinta Regin Precio=30 000 Fin Opcin Si Clase=E Entonces Precio=Precio + 20000 Fin Si Escribir(Nombre, Nombre) Escribir(Regin Destino, Regin) Escribir Precio Del Vuelo, Precio) FIN EJERCICIOS PROPUESTOS DE CICLOS

1) Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de Diseo Estructurado de Algoritmos 2) Leer 10 nmeros y obtener su cubo y su cuarta. 3) Leer 10 nmeros e imprimir solamente los nmeros positivos 4) Leer 20 nmeros e imprimir cuantos son positivos, cuantos negativos y cuantos neutros. 5) Leer 15 nmeros negativos y convertirlos a positivos e imprimir dichos nmeros. 6) Suponga que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar un algoritmo para calcular la calificacin media y la calificacin mas baja de todo el grupo. 7) Calcular e imprimir la tabla de multiplicar de un numero cualquiera. Imprimir el multiplicando, el multiplicador y el producto. 8) Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un da desde las 0:00:00 horas hasta las 23:59:59 horas 9) Una compaa de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a la semana. Su poltica de pagos es que un vendedor recibe un sueldo base, y un 10% extra por comisiones de sus ventas. El gerente de su compaa desea saber cuanto dinero obtendr en la semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuanto tomando en cuenta su sueldo base y sus comisiones. 10) En una empresa se requiere calcular el salario semanal de cada uno de los n obreros que laboran en ella. El salario se obtiene de la sig. forma: Si el obrero trabaja 40 horas o menos se le paga $20 por hora Si trabaja mas de 40 horas se le paga $20 por cada una de las primeras 40 horas y $25 por cada hora extra. 11) Determinar cuantos hombres y cuantas mujeres se encuentran en un grupo de n personas, suponiendo que los datos son extrados alumno por alumno.
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

12) El Depto. de Seguridad Publica y Transito del D.F. desea saber, de los n autos que entran a la ciudad de Mxico, cuantos entran con calcomana de cada color. Conociendo el ultimo dgito de la placa de cada automvil se puede determinar el color de la calcomana utilizando la sig. relacin: DGITO COLOR 1 o 2 amarilla 3 o 4 rosa 5 o 6 roja 7 o 8 verde 9 o 0 azul 13) Obtener el promedio de calificaciones de un grupo de n alumnos. 14) Una persona desea invertir su dinero en un banco, el cual le otorga un 2% de inters. Cual ser la cantidad de dinero que esta persona tendr al cabo de un ao si la ganancia de cada mes es reinvertida?. 15) Calcular el promedio de edades de hombres, mujeres y de todo un grupo de alumnos. 16) Encontrar el menor valor de un conjunto de n nmeros dados. 17) Encontrar el mayor valor de un conjunto de n nmeros dados. 18) En un supermercado un cajero captura los precios de los artculos que los clientes compran e indica a cada cliente cual es el monto de lo que deben pagar. Al final del da le indica a su supervisor cuanto fue lo que cobro en total a todos los clientes que pasaron por su caja. 19) Cinco miembros de un club contra la obesidad desean saber cuanto han bajado o subido de peso desde la ultima vez que se reunieron. Para esto se debe realizar un ritual de pesaje en donde cada uno se pesa en diez bsculas distintas para as tener el promedio mas exacto de su peso. Si existe diferencia positiva entre este promedio de peso y el peso de la ultima vez que se reunieron, significa que subieron de peso. Pero si la diferencia es negativa, significa que bajaron. Lo que el problema requiere es que por cada persona se imprima un letrero que diga: SUBIO o BAJO y la cantidad de kilos que subi o bajo de peso. 20) Se desea obtener el promedio de g grupos que estn en un mismo ao escolar; siendo que cada grupo puede tener n alumnos que cada alumno puede llevar m materias y que en todas las materias se promedian tres calificaciones para obtener el promedio de la materia. Lo que se desea desplegar es el promedio de los grupos, el promedio de cada grupo y el promedio de cada alumno. 21) En una tienda de descuento las personas que van a pagar el importe de su compra llegan a la caja y sacan una bolita de color, que les dir que descuento tendrn sobre el total de su compra. Determinar la cantidad que pagara cada cliente desde que la tienda abre hasta que cierra. Se sabe que si el color de la
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

bolita es roja el cliente obtendr un 40% de descuento; si es amarilla un 25% y si es blanca no obtendr descuento. 22) En un supermercado una ama de casa pone en su carrito los artculos que va tomando de los estantes. La seora quiere asegurarse de que el cajero le cobre bien lo que ella ha comprado, por lo que cada vez que toma un articulo anota su precio junto con la cantidad de artculos iguales que ha tomado y determina cuanto dinero gastara en ese articulo; a esto le suma lo que ira gastando en los dems artculos, hasta que decide que ya tomo todo lo que necesitaba. Aydale a esta seora a obtener el total de sus compras. 23) un teatro otorga descuentos segn la edad del cliente. determinar la cantidad de dinero que el teatro deja de percibir por cada una de las categoras. Tomar en cuenta que los nios menores de 5 aos no pueden entrar al teatro y que existe un precio nico en los asientos. Los descuentos se hacen tomando en cuenta el siguiente cuadro: Categoras Edad Descuento Categora 1 5 - 14 35 % Categora 2 15 - 19 25 % Categora 3 20 - 45 10 % Categora 4 46 - 65 25 % Categora 5 66 en adelante 35 % 24) La presin, volumen y temperatura de una masa de aire se relacionan por la formula: masa= presin * volumen . 0.37 * (temperatura + 460) Calcular el promedio de masa de aire de los neumticos de n vehculos que estn en compostura en un servicio de alineacin y balanceo. Los vehculos pueden ser motocicletas o automviles. 25) Determinar la cantidad semanal de dinero que recibir cada uno de los n obreros de una empresa. Se sabe que cuando las horas que trabajo un obrero exceden de 40, el resto se convierte en horas extras que se pagan al doble de una hora normal, cuando no exceden de 8; cuando las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se paga por una hora normal y el resto al triple. 26) En una granja se requiere saber alguna informacin para determinar el precio de venta por cada kilo de huevo. Es importante determinar el promedio de calidad de las n gallinas que hay en la granja. La calidad de cada gallina se obtiene segn la formula: calidad = peso de la gallina * altura de la gallina numero de huevos que pone Finalmente para fijar el precio del kilo de huevo, se toma como base la siguiente tabla: PRECIO TOTAL DE CALIDAD PESO POR KILO DE HUEVO mayor o igual que 15 1.2 * promedio de calidad mayor que 8 y menor que 15 1.00 * promedio de calidad
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

menor o igual que 8 0.80 * promedio de calidad 27) En la Cmara de Diputados se levanta una encuesta con todos los integrantes con el fin de determinar que porcentaje de los n diputados esta a favor del Tratado de Libre Comercio, que porcentaje esta en contra y que porcentaje se abstiene de opinar. 28) Una persona que va de compras a la tienda Enano, S.A., decide llevar un control sobre lo que va comprando, para saber la cantidad de dinero que tendr que pagar al llegar a la caja. La tienda tiene una promocin del 20% de descuento sobre aquellos artculos cuya etiqueta sea roja. Determinar la cantidad de dinero que esta persona deber pagar. 29) Un censador recopila ciertos datos aplicando encuestas para el ultimo Censo Nacional de Poblacin y Vivienda. Desea obtener de todas las personas que alcance a encuestar en un da, que porcentaje tiene estudios de primaria, secundaria, carrera tcnica, estudios profesionales y estudios de posgrado. 30) Un jefe de casilla desea determinar cuantas personas de cada una de las secciones que componen su zona asisten el da de las votaciones. Las secciones son: norte, sur y centro. Tambin desea determinar cual es la seccin con mayor numero de votantes. 31) Un negocio de copias tiene un limite de produccin diaria de 10 000 copias si el tipo de impresin es offset y de 50 000 si el tipo es estndar. Si hay una solicitud de un el empleado tiene que verificar que las copias pendientes hasta el momento y las copias solicitadas no excedan del limite de produccin. Si el limite de produccin se excediera el trabajo solicitado no podra ser aceptado. El empleado necesita llevar un buen control de las copias solicitadas hasta el momento para decidir en forma rpida si los trabajos que se soliciten en el da se deben aceptar o no. 32) Calcular la suma siguiente: 100 + 98 + 96 + 94 + . . . + 0 en este orden 33) Leer 50 calificaciones de un grupo de alumnos. Calcule y escriba el porcentaje de reprobados. Tomando en cuenta que la calificacin mnima aprobatoria es de 70. 34) Leer por cada alumno de Diseo estructurado de algoritmos su numero de control y su calificacin en cada una de las 5 unidades de la materia. Al final que escriba el numero de control del alumno que obtuvo mayor promedio. Suponga que los alumnos tienen diferentes promedios. 35) El profesor de una materia desea conocer la cantidad de sus alumnos que no tienen derecho al examen de nivelacin. Disee un algoritmo que lea las calificaciones obtenidas en las 5 unidades por cada uno de los 40 alumnos y escriba la cantidad de ellos que no tienen
Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

DIAGRAMACION Y ALGORITMOS

derecho al examen de nivelacin. 36) Leer los 250,000 votos otorgados a los 3 candidatos a gobernador e imprimir el numero del candidato ganador y su cantidad de votos. 37) Suponga que tiene usted una tienda y desea registrar las ventas en su computadora. Disee un algoritmo que lea por cada cliente, el monto total de su compra. Al final del da que escriba la cantidad total de ventas y el numero de clientes atendidos. 38) Suponga que tiene una tienda y desea registrar sus ventas por medio de un computador. Disee un pseudocdigo que lea por cada cliente: A).- el monto de la venta, B).- calcule e imprima el IVA , C).-calcule e imprima el total a pagar, D).- lea la cantidad con que paga el cliente, E).-calcule e imprime el cambio. Al final del da deber imprimir la cantidad de dinero que debe haber en la caja.

Ing. Carlos Javier Pastrana e-mail: soujux@hotmail.com www.tarratech.net

También podría gustarte