prg1 clases03

9

Click here to load reader

Upload: jorge-juarez

Post on 04-Jul-2015

726 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Prg1 clases03
Page 2: Prg1 clases03

Análisis y Diseño de algoritmos.

Ing. JoralJuárez

Page 3: Prg1 clases03

Introducción.

Luego de analizar detalladamente el problema hasta entenderlocompletamente, se procede a diseñar un algoritmo (trazar un plan) quelo resuelva por medio de pasos sucesivos y organizados en secuencialógica. El concepto intuitivo de algoritmo (procedimientos y reglas) sepuede encontrar en procesos naturales de los cuales muchas veces no sees consciente.

Por ejemplo, el proceso digestivo es un concepto intuitivo de algoritmo

con el que se convive a diario sin que haga falta un definición“matemática” del mismo.

Ing. JoralJuárez

Page 4: Prg1 clases03

Ejemplo.

Consideremos el algoritmo dedos números enteros positivosdados.

Obsérvese que no se especificacuáles son los dos números,pero si se establece claramenteuna restricción: deben serenteros y positivos.

Ing. JoralJuárez

Paso 1: Inicio.

Paso 2: Leer los dos números (“a” y “b”). Avanzar al paso 3.

Paso 3: Comparar “a” y “b” para determinar cuál es mayor. Avanzar al paso 4.

Paso 4: Si “a” y “b” son iguales, entonces ambos son el resultado esperado y termina el algoritmo. En caso contrario, avanzar al paso 5.

Paso 5: Si “a” es menor que “b”, se deben intercambiar sus valores. Avanzar al paso 6; si “a” no es menor que “b”, avanzar al paso 6.

Paso 6: realizar la operación “a” menos “b”, asignar el valor de “b” a “a” y asignar el valor de la resta a “b”. Ir al paso 3.

Page 5: Prg1 clases03

Ejercicio.

Un procedimiento que realizamos varias veces al día consiste en lavarnos los dientes. Veamos la forma de expresar este procedimiento como un Algoritmo.

Ing. JoralJuárez

El ejemplo de cambiar un foco quemado es uno de los más utilizados por su sencillez para mostrar los pasos de un Algoritmo.

Page 6: Prg1 clases03

Características de un Algoritmo.

Realizable: El proceso algorítmicodebe terminar después de unacantidad finita de pasos. Se dice

que un algoritmo es inaplicablecuando se ejecuta con unconjunto de datos iniciales y elproceso resulta infinito o durantela ejecución se encuentra con unobstáculo insuperable sin arrojarun resultado.

Ing. JoralJuárez

Comprensible: Debe ser claro lo que hace, de forma que quien ejecute los pasos (ser humano o

máquina) sepa qué, cómo y cuándo hacerlo. Debe existir un procedimiento que determine el proceso de ejecución.

Page 7: Prg1 clases03

Características de un Algoritmo.

Preciso: El orden de ejecución delas instrucciones debe estarperfectamente indicado. Cuandose ejecuta varias veces, con losmismos datos iniciales, elresultado debe ser el mismosiempre. La precisión implicadeterminismo.

Ing. JoralJuárez

Page 8: Prg1 clases03

Actividad.

A diferencia de los seres humanosque realizan actividades sindetenerse a pensar en los pasosque deben seguir, loscomputadores son muyordenados y necesitan que elprogramador les especifique cadauno de los pasos necesarios y suorden lógico de ejecución.

Ing. JoralJuárez

Listar una serie de pasos para realizar una tarea y presentarlos a los estudiantes en forma desordenada para que ellos los ordenen.

Por ejemplo, ordenar los pasos para pescar:

• El pez se traga el anzuelo.

• Enrollar el sedal.

• Tirar el sedal al agua.

• Llevar el pescado a casa.

• Quitar el Anzuelo de la boca del pescado.

• Poner carnada al anzuelo.

• Sacar el pescado del agua.

Page 9: Prg1 clases03

Actividad.

A diferencia de los seres humanosque realizan actividades sindetenerse a pensar en los pasosque deben seguir, loscomputadores son muyordenados y necesitan que elprogramador les especifique cadauno de los pasos necesarios y suorden lógico de ejecución.

Ing. JoralJuárez

Listar una serie de pasos para realizar una tarea y presentarlos a los estudiantes en forma desordenada para que ellos los ordenen.

Por ejemplo, ordenar los pasos para pescar:

• El pez se traga el anzuelo.

• Enrollar el sedal.

• Tirar el sedal al agua.

• Llevar el pescado a casa.

• Quitar el Anzuelo de la boca del pescado.

• Poner carnada al anzuelo.

• Sacar el pescado del agua.