Sei sulla pagina 1di 5

01

Programaci!n estructurada
Ejemplos de escritura de algoritmos

La Real Academia Espaola nos da una denicin muy concisa de lo que es un algoritmo, la cual puede ser consultada en:
http://buscon.rae.es/draeI/SrvltConsulta? TIPO_BUS=3&LEMA=algoritmo !

Esto quiere decir que el algoritmo es un mtodo general para resolver un problema o situacin susceptibles a ser resueltos mediante la denicin de pasos muy claros y concretos. Puede llegar a ser difcil de comprender del todo ya que podra parecer que cualquier problema puede ser resuelto mediante un algoritmo sencillo, pero no es as. Hay problemas muy complejos cuya representacin en un algoritmo sera muy compleja, pero eso queda totalmente fuera del alcance de esta lectura. Veamos algunos consejos y ejemplos de cmo escribir los algoritmos sencillos:

!" El nivel de detalle


Lo importante que hay que tener en cuenta para poder escribir un algoritmo es el nivel de detalle que se debe llegar a tener. Veamos un ejemplo de esto en la siguiente tabla, la cual describe un mismo algoritmo: Calcular el rea de un trapecio.

Problema:
Cmo se calcula el rea de cualquier trapecio?

Algoritmo muy general


1. Obtener el valor de los lados. 2. Aplicar la frmula de clculo de rea del trapecio.

Algoritmo medianamente detallado


1. Obtener el valor de la base mayor. 2. Obtener el valor de la base menor. 3. Aplicar la frmula de clculo de rea del trapecio. 4. Mostrar el resultado.

Algoritmo detallado

1. Obtener el valor de la base mayor. 2. Obtener el valor de la base menor. 3. Sumar la base mayor ms la base menor, este es un resultado temporal. 4. Dividir el resultado temporal entre dos, este es el resultado nal. 5. Mostrar el resultado nal.

02
Como puedes ver, las tres columnas describen un algoritmo, todas representan la solucin de un problema (el obtener el rea de un trapecio), pero slo la columna de la extrema derecha representa los pasos claros y sucientes para llegar a la solucin. Ese es un algoritmo ms computable, es decir, que sus pasos pueden ser representados elmente en un lenguaje de programacin para que una computadora lo resuelva siempre que sea necesario calcular el rea de un trapecio.

#" $Es computable o no?


Cuando algo es computable signica que puede ser contado o calculado. El ejemplo anterior, sobre el clculo del rea de un trapecio es computable porque aplicar la frmula de clculo de rea del trapecio puede descomponerse en pasos ms nos y concretos. Hay problemas y por lo tanto, algoritmos, que no son computables (al menos no de manera sencilla).

Ejemplo ! " Cuando intervienen emociones y


acciones humanas no espontneas
Problema: Pedro se casar con Mara? a) Pedro va con Mara. b) Pedro ama a Mara. c) Mara ama a Pedro. d) ?

Ejemplo # - Subjetividad
Problema: Lo que hace Marcela est bien o mal? a) Marcela tiene tres hijos. b) Marcela y sus hijos son pobres. c) Los hijos de Marcela tienen hambre. d) Marcela roba comida para alimentar a sus hijos. e) ?

Ejemplo $ " No es fcilmente representable.


Muchas veces, se cree que el describir un problema es lo mismo que describir su solucin. Por ejemplo, he aqu una serie de problemas que son susceptibles a ser representados en algoritmos, pero no a ser resueltos por una computadora: a) Cmo ir a un restaurante a cenar? b) Un humano puede llegar a correr a 30 kilmetros por hora? c) Cmo se condensa el agua? d) Cmo se puede calcular el rea de un tringulo del que se conoce slo la longitud de uno de sus lados? En esos casos, se puede representar o describir el problema mediante frases como por ejemplo salir de casa, ir al restaurante, comer, pagar, pero eso no es la solucin, de hecho, no hay solucin nica en el ejemplo del restaurante. Por lo tanto, no son ejemplos de problemas fcilmente computables. He aqu ejemplos de problemas computables:

03
a) El dinero que tengo es suciente para ir a cenar en taxi, pagar y volver tambin en taxi?

Ejemplo del algoritmo:


1) Obtener la cantidad de dinero. 2) A la cantidad de dinero, restarle el precio de un taxi multiplicado por dos. 3) A la cantidad de dinero, restarle la cantidad de consumo en el restaurante. 4) Si la cantidad de dinero es igual o mayor a cero, entonces s es suciente. En caso contrario, no es suciente.

b) Cul es la rapidez instantnea (a la mitad de la longitud de una pista de 3 kilmetros) de una persona que corre a 30 kms por hora durante 2 minutos? c) Cul es la cantidad de agua que se encuentra en la condensacin de vapor en una supercie metlica ferrosa a una temperatura ambiente de 30 grados Celsius durante una hora? d) Cmo se puede calcular la hipotenusa de cualquier tringulo rectngulo?

Consejos para detectar si un problema %y su algoritmo& es computable o no


No se podra abarcar todas las caractersticas que debe cumplir un problema o situacin para determinar si es computable o no lo es, pero a continuacin se describen algunas cosas que se pueden tomar en cuenta para detectar si un problema es computable: 1. La solucin a un problema lo debe tratar de resolver, no slo describir. 2. No hay acciones espontneas, emociones ni subjetividad humana. 3. Es un proceso o un procedimiento claro, nito, concreto y sus partes (pasos) tambin lo son. Por ejemplo: un procedimiento matemtico o el ordenamiento de datos.

'C(mo escribir el algoritmo?


Antes de escribir el algoritmo hay que analizar muy bien el problema, para saber si es susceptible a ser descrito en un algoritmo, como ya lo hemos visto antes. Luego, puedes guiarte en los siguientes puntos para poder escribir el algoritmo:

04
1) Ve el problema framente, tratando de ver las partes esenciales de l: ni demasiado general, ni demasiado detalle. 2) Toma en cuenta las cosas de entrada como cantidades, valores o elementos que son necesarios conocer al principio. 3) Realiza los pasos necesarios para resolver las partes del problema, tomando en cuenta ir siempre paso a paso, no intentes escribir dos o tres pasos en uno solo. 4) C a d a p a s o d e b e i n d i c a r d e f o r m a inequvoca lo que se pretende hacer, no debe haber ambigedades. 5) Muestra siempre los resultados o solucin al problema. Toma en cuenta que al algoritmo debe terminar en algn momento, es decir, debe ser nito. Observa los siguientes algoritmos, los que estn al centro no estn bien escritos, los que estn a la extrema derecha s. Puedes ver por qu?

1. Obtener la longitud de un lado.

Clculo del rea de un hexgono regular

2. Aplicar la frmula de clculo de rea de un hexgono regular.

1. Obtener la longitud de un lado. 2. Obtener la longitud del apotema. 3. Multiplicar la longitud del lado por el apotema, esto es el resultado parcial 1. 4. Dividir el resultado parcial 1 entre dos, esto es el resultado parcial 2. 5. Multiplicar el resultado parcial 2 por 6, esto es el resultado nal. 6. Mostrar el resultado nal. 1. 2. 3. 4. Obtener el primer nmero. Obtener el segundo nmero. Obtener el tercer nmero. Si el primer nmero es mayor que el segundo nmero, entonces el nmero mayor es el primero, de lo contrario, el nmero mayor es el segundo. Esto es el resultado parcial. 5. Si el tercer nmero es mayor al resultado parcial, entonces el nmero mayor es el tercer nmero, de lo contrario, el nmero mayor es el resultado parcial. Esto es el resultado nal. 6. Mostrar el resultado nal. 1. Obtener el precio del producto. 2. Multiplicar el precio del producto por .16, esto es el IVA a pagar. 3. Multiplicar el precio del producto por .84, esto es el precio neto. 4. Mostrar el IVA a pagar. 5. Mostrar el precio neto. 6.

1. Ordenar los nmeros de mayor a menor.

Detectar, de tres nmeros, cul es el mayor.

2. Mostrar el primer nmero.

Cul es el precio neto y lo que se paga de IVA de un producto?

1. Obtener el precio del producto. 2. Calcularle el IVA. 3. Mostrar los resultados.

05
Observa cmo se va generando poco a poco un historial de cosas que suceden, en orden, el orden es muy importante, ya que no puedes usar un valor sin antes obtenerlo o calcularlo. Observa tambin cmo es que lo primero que ocurre es obtener o declarar las cosas que necesitas para resolver el problema, luego las manipulas hasta encontrar la solucin y por ltimo se muestra el resultado.

referencias
Real Academia Espaola. Diccionario en lnea 22a edicin. Vancells-Floats, Joan. Algoritmos y programas. Editorial UOC.
Obtenida de http://books.google.com/books? id=O55qXjsDjnYC&lpg=PA7&dq=algoritmo&hl=es&pg=PA1#v=onepage&q=algoritmo&f=false el da 10 de junio de 2010.

Potrebbero piacerti anche