Algoritmos

17
CONCEPTOS CONCEPTOS BASICOS BASICOS

Transcript of Algoritmos

Page 1: Algoritmos

CONCEPTOS CONCEPTOS BASICOSBASICOS

Page 2: Algoritmos

La Resolución de Problemas La Resolución de Problemas utilizando la Computadora utilizando la Computadora

El Computador es una maquina que no puede trabajar por si sola, únicamente realiza aquellas ordenes que el hombre le indique. Esas ordenes tienen que ser realizadas de tal forma que el computador las entienda.

Esto constituye el software, el cual es pensado y realizado por el hombre. El software esta conformado por el “conjunto de programas que se diseñan para el funcionamiento del computador”. Deben estar escritos en un lenguaje de programación.

Page 3: Algoritmos

El Software se divide en dos grandes tipos: software del sistema y software de aplicación El software del Sistema es el conjunto de

programas necesarios para que la maquina funcione.

El software de aplicación son los que realizan tareas concretas, nominas, contabilidad, análisis estadísticos, etc.

Page 4: Algoritmos

En la vida real todos resolvemos dos tipos de En la vida real todos resolvemos dos tipos de problemasproblemas

Problemas Cualitativos:Problemas Cualitativos: Estos resuelven Estos resuelven problemas de la vida cotidiana.problemas de la vida cotidiana.

Ejemplos:Ejemplos: Subirse a una bicicleta, realizar una llamada Subirse a una bicicleta, realizar una llamada

telefónica, cambiar una llanta a un auto, etc.telefónica, cambiar una llanta a un auto, etc.

Problemas Cuantitativos:Problemas Cuantitativos: Estos resuelven Estos resuelven problemas Matemáticos aplicados a cualquier problemas Matemáticos aplicados a cualquier rama de la ciencia.rama de la ciencia.

Ejemplos:Ejemplos: Matemáticas (aritmética, algebra), Física Matemáticas (aritmética, algebra), Física

(velocidad, masa, Fuerzas, tiempo, distancia, (velocidad, masa, Fuerzas, tiempo, distancia, etc.), Química, etc.etc.), Química, etc.

Page 5: Algoritmos

Clasificación de los Clasificación de los problemasproblemas

Los problemas se clasifican en solubles, no Los problemas se clasifican en solubles, no solubles e indecidible.solubles e indecidible.

Un problema se dice Un problema se dice SOLUBLE SOLUBLE si se sabe de si se sabe de antemano que existe una solución para él.antemano que existe una solución para él. Un problema se dice Un problema se dice INSOLUBLEINSOLUBLE si se sabe si se sabe que no existe una solución para él. que no existe una solución para él. Un problema se dice Un problema se dice INDECIDIBLEINDECIDIBLE si no se si no se sabe si existe o no existe solución para él. sabe si existe o no existe solución para él.

A su vez, los problemas solubles se dividen en A su vez, los problemas solubles se dividen en dos clases: los algorítmicos y los no algorítmicos.dos clases: los algorítmicos y los no algorítmicos.

Un problema se dice Un problema se dice ALGORÍTMICOALGORÍTMICO si existe si existe un algoritmo que permita darle solución.un algoritmo que permita darle solución. Un problema se dice Un problema se dice NO ALGORÍTMICONO ALGORÍTMICO si no si no existe un algoritmo que permita encontrar su existe un algoritmo que permita encontrar su solución. solución.

Page 6: Algoritmos

EjemplosEjemplos Sean los puntos Sean los puntos P=(a ,b)P=(a ,b) y y Q=(c ,d)Q=(c ,d) que definen que definen

una recta, encontrar un segmento de recta una recta, encontrar un segmento de recta perpendicular a la anterior que pase por el punto perpendicular a la anterior que pase por el punto medio de los puntos dados. medio de los puntos dados.

OBJETOS CONOCIDOS OBJETOS CONOCIDOS Los puntos Los puntos PP y y Q.Q. CONDICIONES CONDICIONES El segmento de recta debe El segmento de recta debe

pasar por el punto medio entre pasar por el punto medio entre PP y y QQ, y debe ser , y debe ser perpendicular a la recta trazada entre perpendicular a la recta trazada entre PP y y QQ

TIPO DE PROBLEMA TIPO DE PROBLEMA Soluble-algorítmico. Es Soluble-algorítmico. Es soluble por que ya existe un algoritmo que soluble por que ya existe un algoritmo que permite encontrar la solución del mismo.permite encontrar la solución del mismo.

Page 7: Algoritmos

SoluciónSoluciónINICIO

PASO 1 PASO 2

PASO 3 PASO 4

Page 8: Algoritmos

De las siguientes cuatro imágenes, ¿cuál es la De las siguientes cuatro imágenes, ¿cuál es la más llamativa?más llamativa?

OBJETOS DESCONOCIDOS OBJETOS DESCONOCIDOS Una de las Una de las cuatro imágenes. cuatro imágenes.

OBJETOS CONOCIDOS OBJETOS CONOCIDOS Las cuatro Las cuatro imágenes.imágenes.

TIPO DE PROBLEMA TIPO DE PROBLEMA Soluble-no Soluble-no algorítmico. La solución existe, pero no existe algorítmico. La solución existe, pero no existe un algoritmo que permita determinar cual es, un algoritmo que permita determinar cual es, ya que el concepto de imagen más llamativa ya que el concepto de imagen más llamativa no esta bien definido.no esta bien definido.

Page 9: Algoritmos

La Resolución de Problemas utilizando la Computadora

Aunque el proceso de diseñar programas es un proceso creativo, se pueden considerar tres pasos que ayudan al programador en este proceso:

Análisis del problema Diseño del algoritmo Resolución del algoritmo en la

computadora

Page 10: Algoritmos

Fases para la Resolución de Problemas

1. Análisis del Problema. En la fase de análisis del proceso de programación se determina que hace el programa, para lo cual se re requiere una clara definición de lo que debe hacer el programa y el resultado o solución deseada.

Para poder definir bien un problema es conveniente responder a las siguientes preguntas:

¿Qué entradas se requieren? (cantidad y tipo) ¿Cuál es la salida deseada? (cantidad y tipo) ¿Qué método produce la salida deseada?

Page 11: Algoritmos

2. Diseño del Algoritmo. En esta fase se determina como hacer el programa para cumplir con la tarea solicitada.

Los métodos utilizados para el proceso del diseño se basan en el conocido divide y vencerás (top-down): la resolución de un problema complejo se realiza dividiendo el problema en subproblemas y a continuación dividir estos en otros de nivel mas bajo, hasta que sea implementada una solución en la computadora.

Page 12: Algoritmos

AlgoritmoAlgoritmo Un algoritmo es un método para resolver un problema

mediante una serie de pasos precisos, definidos y finitos.

Características del Algoritmo Preciso: tiene que indicar el orden de realización en

cada paso.

Definido: si el algoritmo se prueba dos veces, en estas dos pruebas, se debe obtener el mismo resultado .

Finito: tiene un numero determinado de pasos y debe producir un resultado en un tiempo finito.

Page 13: Algoritmos

Ejercicio.Ejercicio. PROBLEMA:PROBLEMA: Cambiar la rueda Cambiar la rueda

pinchada de un automóvil teniendo pinchada de un automóvil teniendo un gato mecánico en buen estado, un gato mecánico en buen estado, una rueda de reemplazo y una llave una rueda de reemplazo y una llave inglesa.inglesa.Inicio

PASO 1. Aflojar los tornillos de la rueda pinchada con la llave inglesa.PASO 2.    Ubicar el gato mecánico en su sitio.PASO 3.    Levantar el gato hasta que la rueda pinchada pueda girar libremente.PASO 4.    Quitar los tornillos y la rueda pinchada.PASO 5.    Poner rueda de repuesto y los tornillos.PASO 6.    Bajar el gato hasta que se pueda liberar.PASO 7.    Sacar el gato de su sitio.PASO 8.    Apretar los tornillos con la llave inglesa.Fin

Page 14: Algoritmos

Ejemplo Ejemplo

1.1. Buscar el video de la película Buscar el video de la película 2.2. Si el televisor y el DVD se encuentran Si el televisor y el DVD se encuentran

apagados, encenderlos. apagados, encenderlos. 3.3. Sacar el video del estuche Sacar el video del estuche 4.4. Introducirlo en el lector de DVD. Introducirlo en el lector de DVD. 5.5. Tomar el control del televisor y del DVD Tomar el control del televisor y del DVD 6.6. Dirigirme a el sofá Dirigirme a el sofá 7.7. Ponerme cómodo Ponerme cómodo 8.8. Disfrutar la película Disfrutar la película

Page 15: Algoritmos

Secciones de un Secciones de un algoritmoalgoritmo

¿Qué datos pertinentes necesito para resolver este problema?

Representa la operación o conjunto de operaciones secuenciales

¿Que es lo que quiero de salida, que resultados?

Page 16: Algoritmos

EjemploEjemplo

Para calcular el promedio de 3 calificaciones, me Para calcular el promedio de 3 calificaciones, me dan la siguiente información calificación1, dan la siguiente información calificación1, calificación2, calificación3, edad, nombre, calificación2, calificación3, edad, nombre, estatura, temperatura del ambiente.estatura, temperatura del ambiente.

Definir:Definir:

Datos de EntradaDatos de Entrada

ProcesoProceso

Datos de Salida Datos de Salida

Calificación1, Calificación2,Calificación3

P=Calificación1, Calificación2,Calificación3/Total de Calificaciones

P

Page 17: Algoritmos

Implementación del Algoritmo. Para implementar un algoritmo en la computadora, se debe ejecutar los siguientes pasos: Codificación (escritura en un lenguaje de programación) y documentación, Compilación y ejecución (Una vez que el algoritmo se ha convertido en un programa fuente, debe ser traducido a lenguaje maquina), Verificación y finalmente la Depuración.