Vous êtes sur la page 1sur 28

UNIDAD II

ALGORITMOS

Subtemas

2.1 Anlisis de problemas. 2.2 Representacin de algoritmos: grfica y pseudocdigo. 2.3 Diseo de algoritmos aplicados a problemas. 2.4 Diseo algortmico de funciones

Competencia a desarrollar

Analizar problemas y representar su solucin mediante algoritmos.

Criterios a evaluar

Examen Prcticas Tarea Participacin Asistencia

40 % 30 % 15 % 10 % 5%

Anlisis de problemas
El primer paso a seguir para encontrar la solucin a un problema computable es el anlisis del problema. El anlisis consiste en estudiar el problema planteado para obtener una idea clara y concisa sobre lo que se desea obtener como resultado, los datos de entrada de los que se parte y la forma en que estos datos iniciales van a llegar a la computadora. Igualmente debe estudiarse el tratamiento que se ha de realizar con dichos datos, as como la informacin que se desea obtener como resultado y de qu manera debe presentarse.

Anlisis de problemas
Despus de analizar el problema, se han de conocer claramente tres cosas: 1) Datos de Entrada de que se dispone. Para poder definir estos datos se debe responder a la pregunta Qu datos se necesitan? 2) Informacin de Salida deseada. Para ello se debe responder a Qu se quiere obtener? 3) Tratamiento que ha de realizarse con estos datos. En este caso, se necesita responder a la pregunta Cmo se tiene que obtener el resultado?

Anlisis de problemas

Anlisis del problema

Definir y entender el problema

Identificar los datos de entrada

Identificar los datos de salida (resultado)

Consideraciones

En el anlisis del problema se requiere del mximo de creatividad e imaginacin. Debido a que se busca una solucin se debe examinar cuidadosamente el problema a fin de identificar que tipo de informacin es necesaria producir. En seguida se deben identificar aquellos elementos de informacin ofrecidos por el problema y que resulten tiles para obtener la solucin al problema.

Diseo del procesamiento de solucin


Una vez analizado el problema se precisa disear un procedimiento de solucin. Finalmente, un procedimiento para producir los resultados deseados a partir de los datos. En la programacin imperativa el procedimiento de solucin es un algoritmo.

Es imprescindible que el algoritmo elegido para resolver un problema sea absolutamente claro, sin ningn tipo de ambigedad y, adems, contemple todas y cada una de las posibles situaciones que puedan presentarse durante la resolucin del mismo.

Algoritmo
*Es un mtodo para resolver un problema. *Es un conjunto finito de pasos ordenados que nos sirven para llegar a la solucin de un problemas. Un poco de historia: Algoritmo proviene de Mohammed al-KhoWrizmi, matemtico persa que alcanz gran reputacin por el enunciado de las reglas paso a paso para sumar, restar, multiplicar y dividir nmeros decimales. La traduccin al latn del apellido en la palabra algorismus deriv posteriormente en algoritmo.

Caractersticas de los algoritmos


1. Un algoritmo debe ser finito. Esta caracterstica nos dice que si aplicamos o seguimos un algoritmo, ste debe terminar en algn momento, es decir, tiene un nmero finito de pasos. Un algoritmo debe estar definido. Esta caracterstica nos dice que si seguimos un algoritmo una vez debemos llegar a una solucin y si lo seguimos otra vez, debemos llegar a la misma solucin. Un algoritmo debe ser preciso. Esto es, se debe indicar el orden de ejecucin de cada paso.

2.

3.

Ejemplo de un algoritmo

Hacer un algoritmo que me indique como usar un telfono pblico:

1. 2. 3. 4. 5.

Descolgar la bocina Introducir las monedas Teclear el nmero telefnico Hablar Colgar la bocina

Tipos de algoritmos
Algoritmo

Cualitativo

Cuantitativo

Son aquellos en los que se describen los pasos utilizando palabras.

Son aquellos en los que se utilizan clculos numricos para definir los pasos del proceso.

Ejemplos de algoritmos cualitativos

Instrucciones para armar un aeroplano. Desarrollar una actividad fsica. Cursar una carrera a nivel superior.

Ejemplos de algoritmos cuantitativos

Calcular el factorial de un nmero. Solucin de la ecuacin de segundo grado. Encontrar el mnimo comn mltiplo.

Actividad en clase
10%

Construir un algoritmo para efectuar una llamada telefnica a un amigo cuyo nmero se desconoce pero se encuentra en el directorio telefnico. Elaborar un algoritmo que me indique paso a paso la preparacin de una jarra de agua de pia. Realizar un algoritmo que contenga todos los pasos para calcular el rea de un tringulo.

Formas de representar un algoritmo

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).

Pseudocdigo

Es una de las maneras para representar algoritmos usando la forma narrada o descriptiva para cada uno de los pasos del algoritmo. La palabra Pseudocdigo significa falso cdigo porque realmente no es un cdigo, es decir no son instrucciones escritas en un lenguaje de programacin, sino que es una forma sencilla de describir la solucin de un problema utilizando el lenguaje natural; el espaol o el ingles de tal forma que su trascripcin a un lenguaje de programacin de alto nivel sea lo mas sencillo para quien esta aprendiendo a programar.

Pseudocdigo

Normas de carcter general: Todo pseudocdigo comienza con la palabra Inicio y termina con la palabra Fin. Cada instruccin se debe escribir en una lnea. Para su descripcin, se utilizan una serie de palabras reservadas: Inicio, fin, si, entonces, si no, fin-si, mientras, etc. Debe escribirse identado (tabulado) para mostrar claramente las dependencias de control dentro de los mdulos.

Pseudocdigo

Cada estructura utilizada tendr un solo punto de comienzo y un solo punto de fin de estructura. Algunos autores suelen utilizar un corchete para unir el principio y fin de cada estructura. Se escribir en minscula, excepto aquellos nombres que elige el programador, como son los nombres de variables, de ficheros, de mdulos, etc., que se escribirn con maysculas.

Ejemplo No. 1

Hacer el pseudocdigo de la suma de dos nmeros. INICIO Escribir Numero 1 Leer Num1 Escribir Numero 2 Leer Num2 Suma Num1 + Num2 Escribir La suma de los dos nmeros es Escribir Suma FIN

Ejemplo No. 2

Calcular el rea de un tringulo. INICIO Escribir Introduzca la base Leer base Escribir Introduzca la altura Leer altura Area base * altura / 2 Escribir El area del triangulo es: Escribir Area FIN

Diagrama de flujo

El Diagrama de Flujo es una representacin grfica de la secuencia de pasos que se realizan para obtener un resultado. Un diagrama de flujo muestra la lgica de un algoritmo, haciendo nfasis en los pasos individuales y sus interrelaciones.

Reglas
1. 2. Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a derecha. Los smbolos se unen con lneas, las cuales tienen en la punta una flecha que indica la direccin que fluye la informacin procesos, se deben de utilizar solamente lneas de flujo horizontal o verticales (nunca diagonales). Se debe evitar el cruce de lneas, para lo cual se quisiera separar el flujo del diagrama a un sitio distinto, se pudiera realizar utilizando los conectores. Se debe tener en cuenta que solo se van a utilizar conectores cuando sea estrictamente necesario. No deben quedar lneas de flujo sin conectar Todo texto escrito dentro de un smbolo debe ser legible, preciso, evitando el uso de muchas palabras. Todos los smbolos pueden tener ms de una lnea de entrada, a excepcin del smbolo final. Solo los smbolos de decisin pueden y deben tener mas de una lnea de flujo de salida.

3.

4. 5.
6. 7.

Smbolos
Inicio / Fin Disco Magntico Proceso
Conector

Decisin

Entrada y salida de datos

Conector

Impresin

Lneas de conexin y direccin del flujo

Ejemplo No. 1
Inicio

Primer Numero

Num2

Realizar el diagrama de flujo de la suma de dos nmeros.

Num1

Suma Num1 + Num2

Segundo Numero

La suma de los numeros es, Suma

Fin

Ejemplo No. 2
Inicio

Calificacion

Realizar un diagrama de flujo que indique si un alumno est aprobado o reprobado.

Cal

F
Aprobado

Cal<70

V
Reprobado

Fin

Tarea
Valor 10%

1. Investigar el tema 2.4 Diseo algortmico de funciones.

Vous aimerez peut-être aussi