You are on page 1of 76

METODOLOGA PARA RESOLVER

PROBLEMAS USANDO ALGORITMOS


Deisy Chaves deisy.chaves@correounivalle.edu.co Mircoles 10:00 am a 12:00 am Ed. 331 Sala No 2

CONTENIDO
Conceptos preliminares Metodologa Ejemplos Ejercicios

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 2

CONCEPTOS PRELIMINARES
Qu es un algoritmo?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 3

CONCEPTOS PRELIMINARES
Qu es un algoritmo?
Se puede definir un algoritmo como una secuencia de pasos lgicos y ordenados con las cuales se puede dar solucin a un problema determinado.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 4

CONCEPTOS PRELIMINARES
Un problema es una cuestin que hay que aclarar.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 5

CONCEPTOS PRELIMINARES
Un problema es una cuestin que hay que aclarar. Para solucionar un problema este se debe identificar como tal, debemos realizar una serie de acciones para encontrarle una solucin y describir dicha solucin de la forma ms clara posible para que los otros la entiendan.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 6

CONCEPTOS PRELIMINARES
Un problema es una cuestin que hay que aclarar. Para solucionar un problema este se debe identificar como tal, debemos realizar una serie de acciones para encontrarle una solucin y describir dicha solucin de la forma ms clara posible para que los otros la entiendan. Para un problema pueden existir diferentes maneras de expresar una solucin y por lo tanto diferentes algoritmos.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 7

CONCEPTOS PRELIMINARES
Ejercicio: Que procedimiento seguira para solucionar el laberinto?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 8

CONCEPTOS PRELIMINARES
Ejercicio: Que procedimiento seguira para solucionar el laberinto?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 9

CONCEPTOS PRELIMINARES
Ejercicio: En un estante de una biblioteca se han colocado en forma ordenada los tres tomos de la Divina Comedia, cada uno de los cuales tiene 100 hojas. Una polilla empez por taladrar la primera hoja del primer tomo y prosigui horizontalmente en el mismo sentido, termin su tarea con la ltima hoja del ltimo tomo. Cuntas hojas taladr la polilla?

II III

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 10

CONCEPTOS PRELIMINARES
Ejercicio: Dos profesores pasean charlando de sus respectivas familias. A: Por cierto Pregunta A a B- que edad tienen tus tres hijas?.

B: El colega responde: el producto de sus edades es 36 y su suma casualmente , es igual al nmero de tu casa. Tras pensar un rato, A: dice: me falta un dato.
B: As que el colega responde humm es verdad, se me haba olvidado aclararte que la mayor toca el piano. Cules son las edades de las tres hijas?
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 11

SOLUCIN

DE PROBLEMAS

Por ejemplo: Observemos el siguiente problema a resolver: Vamos a visitar a una amiga que vive en un conjunto residencial. En este conjunto hay un sistema de citofona que permite que la puerta principal de ingreso se abra desde los apartamentos, no hay portera y hemos olvidado en que edificio y en que piso vive. Cmo encontramos el apartamento de nuestra amiga? Qu solucin plantean ustedes?
101 201 301 102 202 302 103 203 303

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 12

SOLUCIN

DE PROBLEMAS

Existen distintas estrategias para la Solucin de problemas: o La bsqueda de Solucin al Azar es la ms sencilla y bsicamente corresponde a ensayar una solucin al azar y probar si esta es correcta. El proceso se realiza hasta que se encuentra una respuesta correcta. o La bsqueda de Solucin Algortmica define una serie de pasos ordenados que nos permitirn llegar a la solucin. o La bsqueda de Solucin Heurstica consiste en aplicar experiencias y conocimientos previos sobre el problema, para encontrar una solucin.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 13

CONCEPTOS PRELIMINARES
Conclusiones:
o No siempre la primera solucin en la que se piensa es la correcta o la ms acertada.

o Cuando se plantea un problema es posible que algunas consideraciones necesarias para platear la solucin no estn suficientemente claras. Por ello una de las tareas iniciales en la solucin de un problema, es aadir supuestos que delimiten y contextualicen claramente el problema a resolver.
o Se debe tener muy claro el problema que se va a resolver y esto tal vez involucre hacer una pequea investigacin relacionada con el problema.
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 14

CONCEPTOS PRELIMINARES
Caractersticas de los algoritmos:
1. Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.

2. Un algoritmo debe estar bien definido. Si se sigue el algoritmo dos veces, con los mismos datos de entrada, se debe obtener el mismo resultado cada vez. 3. Un algoritmo debe ser finito. Si se sigue el algoritmo, se debe terminar en algn momento, o sea debe tener un nmero finito de pasos.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 15

CONCEPTOS PRELIMINARES
Componentes de un algoritmo

Entrada

Proceso

Salida

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 16

CONCEPTOS PRELIMINARES
Componentes de un algoritmo

Entrada

Proceso

Salida

Siempre que se disea un algoritmo se deben verificar estos componentes

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 17

METODOLOGA
Pasos que debemos seguir para resolver cualquier problema usando algoritmos 1. Anlisis del problema

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 18

METODOLOGA
Pasos que debemos seguir para resolver cualquier problema usando algoritmos 1. Anlisis del problema 2. Disear el algoritmo y escribirlo en pseudocdigo

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 19

METODOLOGA
Pasos que debemos seguir para resolver cualquier problema usando algoritmos 1. Anlisis del problema 2. Disear el algoritmo y escribirlo en pseudocdigo 3. Realizar una prueba de escritorio para el algoritmo

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 20

METODOLOGA
Pasos que debemos seguir para resolver cualquier problema usando algoritmos 1. 2. 3. 4. Anlisis del problema Disear el algoritmo y escribirlo en pseudocdigo Realizar una prueba de escritorio para el algoritmo Codificar el algoritmo usando algn lenguaje de programacin

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 21

METODOLOGA
Pasos que debemos seguir para resolver cualquier problema usando algoritmos 1. 2. 3. 4. Anlisis del problema Disear el algoritmo y escribirlo en pseudocdigo Realizar una prueba de escritorio para el algoritmo Codificar el algoritmo usando algn lenguaje de programacin 5. Probar el algoritmo implementado

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 22

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

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 23

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema Definir el problema con precisin

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 24

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema Definir el problema con precisin Identificar los datos de entrada

Entrada ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 25

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema Definir el problema con precisin Identificar los datos de entrada Identificar los datos de salida

Entrada ?

Salida ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 26

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema Definir el problema con precisin Identificar los datos de entrada Identificar los datos de salida Identificar como transformar los datos de entrada en la salida

Entrada ?

Proceso ?

Salida ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 27

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Entradas: La base y la altura

b
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 28

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Salidas: El rea del triangulo

area

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 29

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Proceso: Formula para transformar la entrada(s) en la salida(s)

area = (base * altura ) / 2

b
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 30

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Al conjunto de entradas y salidas se les conoce como las variables del algoritmo
Variables base, altura area

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 31

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Las variables pueden ser numricas (entero, real) o tambin pueden contener texto
Variables base, altura: ? area: ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 32

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Las variables pueden ser numricas (entero, real) o tambin pueden contener texto
Variables base, altura: entero area: ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 33

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 1. Anlisis del problema

Las variables pueden ser numricas (entero, real) o tambin pueden contener texto
Variables base, altura: entero area: real

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 34

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo

El pseudocdigo es utilizado para describir algoritmos en un lenguaje humano simplificado que no es dependiente de ningn lenguaje de programacin

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 35

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 36

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio base, altura: entero area: real

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 37

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio base, altura: entero area: real
leer (base) leer (altura)

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 38

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 39

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 40

Cuales son las entradas y salidas en el pseudocdigo?

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo

La prueba de escritorio es una herramienta para entender que hace un determinado algoritmo, o para verificar que la solucin al problema es la correcta

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 41

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo

En esta prueba, se hace una ejecucin manual del algoritmo y se hace antes de implementarlo en la computadora. Se dan valores iniciales a las variables de entrada, se contina con el proceso hasta verificar si el algoritmo cumple con los criterios de salida esperados

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 42

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 43

base 2

altura 4

rea

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 44

base 2

altura 4

rea 4.0

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 45

base 2

altura 4

rea 4.0

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 46

base 2 3

altura 4 1

rea 4.0

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 47

base 2 3

altura 4 1

rea 4.0 1.5

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 3. Realizar una prueba de escritorio para el algoritmo
Inicio base, altura: entero area: real
leer (base) leer (altura) area = (base*altura)/2 imprimir (area) Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 48

base 2 3

altura 4 1

rea 4.0 1.5

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 4. Codificar el algoritmo usando algn lenguaje de programacin Para codificar/implementar los algoritmos se usan los lenguajes de programacin. Un lenguaje de programacin permite escribir instrucciones que pueden ser interpretadas por una computadora

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 49

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 4. Codificar el algoritmo usando algn lenguaje de programacin Los algoritmos escritos en pseudocdigo se deben traducir a un lenguaje de programacin

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 50

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 4. Codificar el algoritmo usando algn lenguaje de programacin Los algoritmos escritos en pseudocdigo se deben traducir a un lenguaje de programacin

NOTA: Se recomienda realizar el pseudocdigo antes de codificar un algoritmo y realizar la prueba de escritorio

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 51

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 4. Codificar el algoritmo usando algn lenguaje de programacin En nuestro caso usaremos un lenguaje de programacin llamado Java, pero existen muchos otros como:

C C++ Ruby C# PHP


EISC
Universidad del Valle - Algoritmia y Programacin
Slide 52

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el rea de un triangulo a partir de su base y su altura 4. Codificar el algoritmo usando algn lenguaje de programacin Durante las siguientes clases veremos el proceso para codificar los algoritmos en el lenguaje de programacin Java

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 53

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 54

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Definir el problema con precisin Identificar los datos de entrada Identificar los datos de salida Identificar como transformar los datos de entrada en la salida
Entrada ? Proceso ? Salida ?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 55

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Entradas: Los coeficientes a, b, c. Nota: a, b, c son nmeros reales y a es un nmero diferente de cero

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 56

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Salidas: El valor de x, correspondiente a las raz de la ecuacin ax2 + bx + c = 0.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 57

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Proceso: Formula para transformar la entrada(s) en la salida(s)

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 58

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Proceso: Formula para transformar la entrada(s) en la salida(s)

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 59

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema Al conjunto de entradas y salidas se les conoce como las variables del algoritmo

Variables a, b, c x1, x2

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 60

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema De que tipo (entero, real, texto) son las variables a utilizar en este caso?

Variables a, b, c:? x1, x2:?

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 61

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 1. Anlisis del problema De que tipo (entero, real, texto) son las variables a utilizar en este caso?

Variables a, b, c: real x1, x2: real

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 62

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 63

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio a, b, c: real x1, x2: real

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 64

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio a, b, c: real x1, x2: real leer (a) leer (b) leer (c)

Fin
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 65

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio a, b, c: real x1, x2: real leer (a) leer (b) leer (c)

x1 = (-b + ((b*b)-(4*a*c))/2*a x2 = (-b - ((b*b)-(4*a*c))/2*a Fin


EISC
Universidad del Valle - Algoritmia y Programacin
Slide 66

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 2. Disear el algoritmo y escribirlo en pseudocdigo
Inicio a, b, c: real x1, x2: real leer (a) leer (b) leer (c)

x1 = (-b + ((b*b)-(4*a*c))/2*a x2 = (-b - ((b*b)-(4*a*c))/2*a imprimir (x1) imprimir (x2) Fin


EISC
Universidad del Valle - Algoritmia y Programacin
Slide 67

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 3. Realizar una prueba de escritorio para el algoritmo
Inicio a, b, c: real x1, x2: real leer (a) leer (b) leer (c) a
1.0 -3.5

b
5.0 4.0

c
6.0 0.0

x1

x2

x1 = (-b + ((b*b)-(4*a*c))/2*a x2 = (-b - ((b*b)-(4*a*c))/2*a imprimir (x1) imprimir (x2) Fin


EISC
Universidad del Valle - Algoritmia y Programacin
Slide 68

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 3. Realizar una prueba de escritorio para el algoritmo
Inicio a, b, c: real x1, x2: real leer (a) leer (b) leer (c) a
1.0 -3.5

b
5.0 4.0

c
6.0 0.0

x1
-2.0 0.0

x2
-3.0 1.14

x1 = (-b + ((b*b)-(4*a*c))/2*a x2 = (-b - ((b*b)-(4*a*c))/2*a imprimir (x1) imprimir (x2) Fin


EISC
Universidad del Valle - Algoritmia y Programacin
Slide 69

EJEMPLO
Problema: Desarrollar un algoritmo que permita calcular el valor de x, que da solucin a la ecuacin cuadrtica ax2 + bx + c = 0. 4. Codificar el algoritmo usando algn lenguaje de programacin Los algoritmos escritos en pseudocdigo se deben traducir a un lenguaje de programacin

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 70

EJERCICIOS
Siguiendo la metodologa propuesta anteriormente, resuelva los siguientes problemas: o Desarrolle un algoritmo que lea el monto de una factura y muestre el valor que se debe pagar por concepto del impuesto del IVA (16%) y el valor total a pagar. o Una casa de cambio necesita un programa que lea el valor en pesos y muestre la cantidad correspondiente en dlares.

o Desarrolle un algoritmo que permita calcular el rea de un crculo a partir del radio.
o Desarrolle un algoritmo que permita convertir de grados Centgrados a grados Celsius y Fahrenheit

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 71

Referencias: Dr. Harvey M. Deitel. Java How to Program, Fourth Edition. Pg. 314

ANEXOS

ALGORITMO
Un algoritmo es una secuencia de pasos lgicos y ordenados con las cuales se puede dar solucin a un problema determinado.
o Propiedades de los Algoritmos: Existen varias propiedades de nuestro inters que comparten los algoritmos: Entrada: un algoritmo toma como punto de partida un conjunto de valores bien definido que son considerados las entradas del algoritmo.

Salida: el algoritmo arroja un valor bien definido, que tiene relacin con la entrada, y que corresponde a la solucin del problema.
Definicin Clara: cada paso del algoritmo debe estar definido claramente y sin ambigedad. Correctitud: el algoritmo debe producir la salida correcta (veraz) para todas las posibles entradas
EISC
Universidad del Valle - Algoritmia y Programacin
Slide 75

ALGORITMO
Finito: el algoritmo debe producir la salida esperada despus de un nmero finito de pasos para cualquier conjunto de entrada. Eficaz: debe ser posible realizar cada paso del algoritmo de manera exacta y en un lapso finito (acotado) de tiempo.

General: el algoritmo debe ser aplicable a todos los problemas que satisfagan las restricciones de su entrada y no a subconjuntos especficos de valores nicamente. Ser mejor an en cuanto menos se restrinja su entrada.

EISC
Universidad del Valle - Algoritmia y Programacin
Slide 76