Presentacion ip algoritmia_2012_i_v2_parte_i

18
Algoritmia Departamento de ingeniería

description

Presentacion de diapositivas

Transcript of Presentacion ip algoritmia_2012_i_v2_parte_i

Page 1: Presentacion ip algoritmia_2012_i_v2_parte_i

Algoritmia

Departamento de ingeniería

Page 2: Presentacion ip algoritmia_2012_i_v2_parte_i

Fases en la resolución de problemas (I)

Las fases que se proponen para resolver un problema con computador son:

1. Análisis

2. Diseño del algoritmo

3. Codificación (implementación)

4. Compilación y ejecución de un programa

5. Verificación y depuración

6. Mantenimiento

7. Documentación.

Departamento de ingeniería

Page 3: Presentacion ip algoritmia_2012_i_v2_parte_i

Fases en la resolución de problemas (II)

Análisis. ¿Qué?

El problema se analiza teniendo en cuenta las especificaciones de los requisitos del cliente.

Diseño. ¿Cómo?

Se diseña la solución.

Se genera un algoritmo para resolver el problema.

Codificación.

Se escribe la solución en el lenguaje de alto nivel.

Departamento de ingeniería

Page 4: Presentacion ip algoritmia_2012_i_v2_parte_i

Fases en la resolución de problemas (IV)

Compilación y ejecución El programa fuente se traduce a lenguaje máquina. Lo realiza el compilador y el S.O. Se eliminan errores. Se ejecuta el programa. Mantenimiento. Actualización o modificación Se cumplen solicitudes de cambio del cliente.

Documentación. Documentación de las diferentes fases. Generación de manuales de usuario Normas de mantenimiento.

Departamento de ingeniería

Page 5: Presentacion ip algoritmia_2012_i_v2_parte_i

Lenguajes de programación (I)

Software de aplicación:

Departamento de sistemas

Algoritmo en pseudocódigo (o diagrama

de flujo)

Programa en Java

Código fuente en Java

Código máquina (programa ejecutable)

Problema

Escritura en Java

Edición

Traducción y ejecución (traductor

y compilador)

Resultado

Page 6: Presentacion ip algoritmia_2012_i_v2_parte_i

Para resolver un problema…

Los pasos para resolver un problema:

Diseño del algoritmo. Descripción de una secuencia ordenada de pasos para dar solución a un problema (situación).

Expresar el algoritmo como un “programa” en el lenguaje de programación adecuado.

Ejecución y validación del programa por el computador

Departamento de ingeniería

Page 7: Presentacion ip algoritmia_2012_i_v2_parte_i

Situaciones ó problemas

Hoy está lloviendo… ¿Cómo hago para llegar desde mi casa a la estación del MIO? (grupo 1).

Reviso mis horarios de clase… oh no tengo un cruce!!!… ¿Cómo hago yo para solucionar esto? (grupo 2).

Deseo un segundo calificador a mi primer examen parcial. ¿Qué debo hacer? (grupo 3).

Departamento de ingeniería

Page 8: Presentacion ip algoritmia_2012_i_v2_parte_i

Es un conjunto de pasos, instrucciones o acciones que se deben seguir y realizar

ordenadamente, para llegar a un fin determinado.

Son útiles para: ◦ Solucionar un problema

◦ Obtener una respuesta

◦ Realizar una una tarea

◦ Mejorar un proceso

◦ Etc.

Departamento de ingeniería

Concepto y características de algoritmos (I)

Page 9: Presentacion ip algoritmia_2012_i_v2_parte_i

Concepto y características de algoritmos (II)

Características de un algoritmo

Los algoritmos son independientes del lenguaje de programación.

El algoritmo se puede representar posteriormente en un lenguaje de programación diferente.

Departamento de ingeniería

Page 10: Presentacion ip algoritmia_2012_i_v2_parte_i

Concepto y características de algoritmos (III)

Características fundamentales de un algoritmo Preciso: Debe indicar el orden en que se realizó cada paso. Definido: Obtiene el mismo resultado si se sigue dos veces el mismo algoritmo. Finito: Un algoritmo se debe terminar en algún momento. Un número finito de pasos.

Departamento de ingeniería

Page 11: Presentacion ip algoritmia_2012_i_v2_parte_i

Concepto y características de algoritmos (VI)

Reglas

Al definir un algoritmo se deben describir tres pasos: entrada, proceso y salida.

Ejemplo: ¿Cómo realizo una llamada desde un celular?

Departamento de ingeniería

Page 12: Presentacion ip algoritmia_2012_i_v2_parte_i

Ejemplos de algoritmos

Situaciones de la vida diaria

Preparar un alimento.

Ir al cine

Asistir a una cita.

Situaciones matemáticas

Promedio acumulado del semestre.

Determinar mayor de dos números.

Encontrar el estudiante con mejor nota en las Ingenierías del segundo semestre.

Departamento de ingeniería

Page 13: Presentacion ip algoritmia_2012_i_v2_parte_i

Tipos de algoritmos (I)

Algoritmos cualitativos

Son aquellos pasos o instrucciones descritos por medio de palabras que sirven para llegar a la obtención de una respuesta o solución de un problema.

• Ej.: La utilización del directorio telefónico, una receta de cocina (preparar sancocho), montaje de una llanta, etc.

Departamento de ingeniería

Page 14: Presentacion ip algoritmia_2012_i_v2_parte_i

Tipos de algoritmos (II)

Algoritmos cuantitativos

Son todos aquellos pasos o instrucciones que involucran cálculos numéricos para llegar a un resultado satisfactorio.

• Ej.: Multiplicar dos números, ordenar una cantidad de números en forma ascendente, dividir dos números, encontrar de un conjunto de números el mayor, etc.

Departamento de ingeniería

Page 15: Presentacion ip algoritmia_2012_i_v2_parte_i

Pasos a seguirse para la elaboración de un algoritmo ()

1. Leer el enunciado del problema cuantas veces sea necesario, hasta entenderlo completamente, si tiene duda sobre el significado de alguna pregunta o condición aclararla, ojala se aprenda de memoria el enunciado.

2. Determinar claramente con que datos de entrada se cuenta para la solución del problema.

3. Aclarar y determinar la información o resultados que se soliciten.

Información Intermedia.

Información Final.

Departamento de ingeniería

Page 16: Presentacion ip algoritmia_2012_i_v2_parte_i

Pasos a seguirse para la elaboración de un algoritmo ()

4. Definir que cálculos y/o comparaciones se necesitan

para llegar al resultado final.

Cálculos y comparaciones intermedias.

Cálculos y comparaciones finales.

5. Tener en cuenta toda clase de condiciones y

restricciones para la solución del problema.

Todos los pasos tienen la misma importancia, la falta de analisis

de alguno de ellos causara problemas en el transcurso del

desarrollo del algoritmo.

Departamento de ingeniería

Page 17: Presentacion ip algoritmia_2012_i_v2_parte_i

Representación de los algoritmos

Para representar los algoritmos se utilizan los:

Diagramas de Flujo: Representación gráfica

Pseudo Código o Pseudo Lenguaje: lenguaje de especificación de algoritmos.

Departamento de ingeniería

Page 18: Presentacion ip algoritmia_2012_i_v2_parte_i

Gracias!!!