Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo...

61
Algoritmos y la Resolución de problemas Corina Flores Villarroel UMSS 1 Corina Flores Villarroel - UMSS

Transcript of Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo...

Page 1: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algoritmos y la Resolución de problemas

Corina Flores Villarroel

UMSS

1 Corina Flores Villarroel - UMSS

Page 2: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Introducción

Continuamente el hombre se ve enfrentado a una gran diversidad de problemas, desde ... ¿qué color de auto comprar?, ¿por cuál candidato votar?, ¿cuáles son las raíces de una ecuación? ¿cómo ganar un partido de ajedrez?, ¿cuál es la mejor inversión a realizar?, ¿cuántos metros cúbicos de gases tóxicos generan las industrias químicas al año?, etc..

2 Corina Flores Villarroel - UMSS

Page 3: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Introducción

Problema, según el diccionario de la Real Academia Española es

Conjunto de hechos o circunstancias que dificultan la

consecución de algún fin.

Planteamiento de una situación cuya respuesta desconocida debe obtenerse a través de métodos científicos.

3 Corina Flores Villarroel - UMSS

Page 4: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Introducción

Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial y un estado deseado o final. Para pasar de un estado al otro se deben realizar determinadas tareas que son legales. A estas tareas se las denominan habitualmente acciones.

4 Corina Flores Villarroel - UMSS

Page 5: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Introducción

1. Una solución para resolver problemas como: ¿qué color de auto comprar?, ¿por cuál candidato votar?, requiere un método de solución más subjetiva.

2. En cambio problemas como: ¿cuáles son las raíces de una ecuación? ¿cómo ganar un partido de ajedrez?, ¿cuál es la mejor inversión a realizar?, ¿cuántos metros cúbicos de gases tóxicos generan las industrias químicas al año?, etc. Requieren de soluciones más objetivas

5 Corina Flores Villarroel - UMSS

Page 6: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Resolución de problemas

La búsqueda de la solución de un problema es una tarea difícil de sistematizar. Sin embargo, existen algunas pautas útiles que, de ser seguidas, pueden ayudarnos a enfrentar la solución a un problema, desde el punto de vista de la programación.

6 Corina Flores Villarroel - UMSS

Page 7: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Resolución de problemas

La clave es Comprender el problema

no tanto para por ejemplo … qué hacer con el foco roto, sino, para saber qué es lo que ocasiona que se rompa.

7 Corina Flores Villarroel - UMSS

Page 8: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Solución a problemas informáticos

Son cinco pasos: 1. Análisis

2. Diseño

3. Implementación

4. Pruebas

5. Mantenimiento

8 Corina Flores Villarroel - UMSS

Page 9: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Análisis

Tiene TRES pasos: 1. Entradas al problema

2. El proceso a seguir

3. Salidas

9 Corina Flores Villarroel - UMSS

Page 10: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseño

Aquí se construye un plan de acción: 1. Palabras, mediante una secuencia ordenada de

pasos a seguir para ejecutar el proceso (pseudocódigo)

2. Formato gráfico, secuencia de imágenes que tiene el mismo fin

10 Corina Flores Villarroel - UMSS

Page 11: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Implementación

Se construye la solución al problema escribiendo cada paso en un lenguaje de programación y siguiendo detalladamente el resultado de la etapa de diseño.

11 Corina Flores Villarroel - UMSS

Importante! No cambiar (aumentar o disminuir lo que se hizo en la etapa de diseño)

Page 12: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Pruebas

Para verificar que los resultados de la implementación sean los esperados tal como se había previsto durante el diseño.

12 Corina Flores Villarroel - UMSS

Page 13: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Mantenimiento

• Realizar adecuaciones a la solución implementada. No porque hay errores, sino, para que se acomode a nuevas situaciones.

• En el curso trabajaremos en las primeras tres etapas: Análisis, diseño e implementación.

Corina Flores Villarroel - UMSS 13

Page 14: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Y ¿dónde quedan los algoritmos?

• Debemos comprender que, la resolución de un problema mediante computadora parte de:

Corina Flores Villarroel - UMSS 14

Page 15: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Hay que notar que …

• A partir del esquema anterior, el algoritmo se realiza como un paso previo a al programa que será ejecutado por una computadora.

Corina Flores Villarroel - UMSS 15

Page 16: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Importante!

De ahí que una diferencia notoria entre un algoritmo y un programa es que …

Corina Flores Villarroel - UMSS 16

Page 17: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Importante!

el ALGORITMO incorpora las características estructurales básicas de un programa, independientemente de los detalles de su implementación (eso significa que puede ser traducido a cualquier lenguaje con independencia de la computadora);

Corina Flores Villarroel - UMSS 17

Page 18: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Importante!

mientras que un PROGRAMA tiene un conjunto específico de detalles para resolver un problema expresado en un lenguaje de programación bajo un vocabulario restringido y preciso de un lenguaje de programación.

Corina Flores Villarroel - UMSS 18

Page 19: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Resolución de problemas por computadora

Intuitivamente las personas efectuamos cotidianamente una serie de pasos, procedimientos o acciones que nos permitan alcanzar algún resultado o resolver un problema (al bañarnos, al desayunar, al ir a la universidad). En realidad todo el tiempo estamos aplicando algoritmos para resolver problemas.

19 Corina Flores Villarroel - UMSS

Page 20: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Resolución de problemas por computadora

Antes de continuar a profundizar el concepto de algoritmo , les invito a ver este video en el que se ilustra la creación de un programa

20 Corina Flores Villarroel - UMSS

https://www.youtube.com/watch?v=-0hY-ihk7TA

Page 21: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algoritmo

Formalmente, un algoritmo es

"una secuencia de pasos, lógicos y ordenados con los cuales se puede dar solución a un problema determinado".

Un problema es cualquier situación que requiera de una solución.

21 Corina Flores Villarroel - UMSS

Page 22: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algoritmo

He aquí, les invito a ver este video en el que se ilustra el concepto de algoritmo

22 Corina Flores Villarroel - UMSS

https://www.youtube.com/watch?v=Pzl3MliqDyI

Page 23: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algunas consideraciones

Para solucionar, un problema será

necesario comprender éste para efectuar una serie de acciones para encontrarle una solución y describir dicha solución de la forma más clara posible para que los otros la entiendan.

23 Corina Flores Villarroel - UMSS

Page 24: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algunas consideraciones

• Para un problema pueden existir

diferentes maneras de expresar una solución y por lo tanto diferentes algoritmos.

24 Corina Flores Villarroel - UMSS

Page 25: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algunas consideraciones

25 Corina Flores Villarroel - UMSS

Ejercicio: ¿Que procedimiento seguiría para solucionar el laberinto?

Page 26: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Algunas consideraciones

26 Corina Flores Villarroel - UMSS

Ejercicios: 1. ¿Cómo abordar un taxi? 2. ¿Cómo comprar un boleto para ver una película en un cine? 3. ¿Cómo puedo buscar un tema musical? 4. ¿Cómo me inscribo a la carrera? 5. … etc.

Page 27: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Características de un algoritmo

1. Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.

2. Un algoritmo debe estar definido. Si se sigue el algoritmo dos veces, con los mismos datos de entrada, se debe obtener el mismo resultado cada vez.

27 Corina Flores Villarroel - UMSS

Page 28: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Características de un algoritmo

3. Un algoritmo debe ser finito. Si se sigue el algoritmo, se debe terminar en algún momento, o sea debe tener un número finito de pasos.

4. Debe ser independiente del lenguaje de programación que se emplee para implementarlo

28 Corina Flores Villarroel - UMSS

Page 29: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Partes de un algoritmo

Un algoritmo tiene tres elementos:

Entrada Proceso Salida

29 Corina Flores Villarroel - UMSS

Es importante , que en el diseño de un algoritmo estén presentes los tres elementos

Page 30: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Metodología para resolver

Corina Flores Villarroel - UMSS 30

Resolución de un problema

Análisis del problema

Diseño del algoritmo

Codificación del algoritmo

En esta línea el matemático G. Polya propuso, a finales de 1940, una metodología general para la resolución de problemas matemáticos, que ha sido adaptada para el caso en que se cuente con una computadora como recurso para resolver.

Page 31: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Análisis del problema

Corina Flores Villarroel - UMSS 31

Análisis del problema

Definir el problema

Identificar los datos de entrada

Identificar datos de salida

Page 32: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 32

1. Análisis del problema Comprender el problema con precisión Identificar los datos de entrada

Entrada ¿?

Page 33: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 33

1. Análisis del problema Comprender el problema con precisión Identificar los datos de entrada Identificar los datos de salida

Entrada ¿?

Salida ¿?

Page 34: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 34

1. Análisis del problema Comprender el problema con precisión Identificar los datos de entrada Identificar los datos de salida Identificar cómo transformar los datos de entrada en salida

Entrada ¿?

Salida ¿?

Proceso ¿?

Page 35: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 35

1. Análisis del problema Entradas: la base y la altura

h

b

Page 36: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 36

1. Análisis del problema

Base altura

Page 37: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 37

1. Análisis del problema Salidas: el área de un triángulo

area

Page 38: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 38

1. Análisis del problema

Base altura

area

Page 39: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 39

1. Análisis del problema Proceso: Fórmula para transformar la(s) entrda(s) en la(s) salida(s)

h

b

area = (base * altura ) / 2

Page 40: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 40

1. Análisis del problema

Base altura

area area = (base * altura ) / 2

Page 41: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 41

1. Análisis del problema

Variables: Base, altura area

Al conjunto de entradas y salidas se les conoce como mlas variables del algoritmo

Page 42: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 42

1. Análisis del problema

Variables: Base, altura: ? Area: ?

Al conjunto de entradas y salidas se les conoce como mlas variables del algoritmo

Page 43: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 43

1. Análisis del problema

Variables: Base, altura: entero Area: ?

Al conjunto de entradas y salidas se les conoce como mlas variables del algoritmo

Page 44: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Se utilizan herramientas:

Lenguaje natural

Pseudocódigo

Diagramas de flujo

Corina Flores Villarroel - UMSS 44

Page 45: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Representación de un Algoritmo

Un algoritmo se puede expresar mediante:

Lenguaje natural

• En el lenguaje normal que hablamos y escribimos

Pseudocódigo

• Es un lenguaje de alto nivel sencillo pero no precisamente es un lenguaje de programación

Diagrama De Flujo (DFD)

• Es un lenguaje gráfico

45 Corina Flores Villarroel - UMSS

Page 46: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 46

2. Diseñar el algoritmo y escribirlo en pseudocódigo

El pseudocódigo es utilizado para describir algoritmos en un lenguaje humano simplificado que no es dependiente de ningún lenguaje de programación

Page 47: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 47

2. Diseñar el algoritmo y escribirlo en pseudocódigo

Inicio Fin

Page 48: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 48

2. Diseñar el algoritmo y escribirlo en pseudocódigo

Inicio

base, altura: entero area: real

Fin

Page 49: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 49

2. Diseñar el algoritmo y escribirlo en pseudocódigo

Inicio

base, altura: entero area: real

leer (base) leer (altura)

Fin

Page 50: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Diseñar el algoritmo

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Corina Flores Villarroel - UMSS 50

2. Diseñar el algoritmo y escribirlo en pseudocódigo Inicio

base, altura: entero area: real

leer (base) leer (altura)

area = (base*altura)/2 imprimir (area)

Fin

Page 51: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Estructura del algoritmo

Cabecera (nombre del algoritmo) CalculaAreaTriangulo

Corina Flores Villarroel - UMSS 51

Declaración (variables/constantes) base, altura: entero area: real

leer (base) leer (altura)

area = (base*altura)/2 imprimir (area)

Cuerpo (secuencia de acciones)

Page 52: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Pseudocódigo vs. DFD

La siguiente figura, muestra la relación de equivalencia entre el pseudocódigo - diagrama de flujo.

52 Corina Flores Villarroel - UMSS

Page 53: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Instrucciones de un algoritmo

Entre las instrucciones básicas que se pueden implementar de modo general en un algoritmo y que esencialmente soportan todos los lenguajes de programación se citan:

53 Corina Flores Villarroel - UMSS

Page 54: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

El ejemplo en diagrama de flujo

54 Corina Flores Villarroel - UMSS

Problema: Escribir un algoritmo que permita calcular el área de un triangulo a partir de su base y su altura

Page 55: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo Dado el problema de "Abordar un taxi", indica ¿cuál de las

opciones propuestas como solución es la correcta?.

Opción A)

1. Situarse al borde

de la acera de cara

al lado opuesto de

la calle.

2. Buscar la señal

de taxi.

3. Al ver la señal,

silbar y hacer

ademanes para

llamar su atención.

4. Fin

Opción B)

1. Buscar la señal de taxi

en los autos que pasan.

2. Levantar la mano o

gritar "Taxi".

3. Llamar la atención del

conductor

4. Tomar el taxi

3.Al ver la señal, silbar y

hacer ademanes para

llamar su atención.

5. Fin

Opción C)

1. Buscar la señal de

taxi en los autos que

pasan.

2. Levantar la mano o

gritar "Taxi".

3. Esperar a que el

taxi se estacione.

4. Abrir la puerta y

abordar.

5. Fin

55 Corina Flores Villarroel - UMSS

Page 56: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Ejemplo

• Indica ¿cuál de las opciones propuestas como solución es la correcta?.

• Pero … antes de apresurarte a responder es bueno recordar el concepto de algoritmo y sus características

56 Corina Flores Villarroel - UMSS

Page 57: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Repasemos …

Algoritmo =

"un conjunto finito de instrucciones, ordenadas secuencialmente y libres de ambigüedad, que lleva a la solución de un problema dado en un tiempo finito".

57 Corina Flores Villarroel - UMSS

Page 58: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Repasemos …

Se caracteriza por

No ambiguo, es decir, que no dé lugar a diferentes interpretaciones

Finito, debe finalizar después de que se haya llevado a cabo una cantidad finita de pasos

Preciso, el orden de ejecución de los pasos debe estar perfectamente indicado

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.

58 Corina Flores Villarroel - UMSS

Page 59: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Continuando con el ejemplo …

• Dado el problema de "Abordar un taxi", indica ¿cuál de las opciones propuestas como solución es la correcta?.

Opción A)

1. Situarse al borde

de la acera de cara

al lado opuesto de

la calle.

2. Buscar la señal

de taxi.

3. Al ver la señal,

silbar y hacer

ademanes para

llamar su atención.

4. Fin

Opción B)

1. Buscar la señal de taxi

en los autos que pasan.

2. Levantar la mano o

gritar "Taxi".

3. Llamar la atención del

conductor

4. Tomar el taxi

3.Al ver la señal, silbar y

hacer ademanes para

llamar su atención.

5. Fin

Opción C)

1. Buscar la señal de

taxi en los autos que

pasan.

2. Levantar la mano o

gritar "Taxi".

3. Esperar a que el

taxi se estacione.

4. Abrir la puerta y

abordar.

5. Fin

59 Corina Flores Villarroel - UMSS

Page 60: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Continuando con el ejemplo …

1. ¿Cuál de las opciones es la correcta?

C

2. ¿Qué propiedades las opciones que son incorrectas no cumplían?. Analiza! Las otras opciones

60 Corina Flores Villarroel - UMSS

Page 61: Resolución de problemas y...Introducción Aunque estos problemas son aparentemente diferentes, todo problema puede pensarse como una discrepancia entre un estado actual o inicial

Resumiendo

61 Corina Flores Villarroel - UMSS