Está en la página 1de 19

EL ESTUDIO DE LOS ALGORITMOS

Profesor: Mauro Guzmán Lafuente


INTRODUCCIÓN

En términos comunes podemos decir que el


algoritmo es un conjunto de instrucciones que
debemos seguir en un cierto orden para realizar una
tarea. Por ejemplo, si queremos hacer una torta,
tomamos la receta y leemos las instrucciones una a
una en el orden en que están escritas. En la vida diaria
constantemente vemos algoritmos; por ejemplo para
lavar ropa en un lavarropas automático, para
descongelar en forma automática una heladera (los
pasos siempre se encuentran pegados en el interior
de la heladera) o para tocar algún instrumento
musical (en este caso el algoritmo estaría
representado en las partituras).
ALGORITMO PARA EL TEÑIDO EN FRÍO
(EJEMPLO)

1. Por cada litro de agua deberá emplearse los siguientes


elementos: dos cucharas de anilina y una cucharada sopera
de sal.
2. Tome la prenda que va a teñir que podrá ser: algodón, lino,
seda natural o lana.
3. Antes del teñido, lave y enjuague las telas para eliminar su
apresto y suciedad.
4. Emplee un recipiente en el que las prendan quepan
cómodamente y queden cubiertas totalmente con agua.
5. Introduzca las prendas en la mezcla dejándolas sumergidas
durante 45 minutos.
6. Saque las prendas y lávelas con agua fría, hasta que no
despida mas anilina.
7. Déjelas secar bien extendidas.
EN COMPUTACIÓN

En computación, los algoritmos se


representan como programas dentro de las
computadoras (lo que comúnmente
llamamos software).
Si queremos que una computadora efectúe
una tarea, primero debemos diseñar un
algoritmo para llevar a cabo esa tarea, y
luego programar ese algoritmo en la
computadora. Por lo anterior, los algoritmos
son importantes en computación. Mucho
antes de que se inventaran las computadoras,
los grandes matemáticos de la antigüedad ya
buscaban la manera de descubrir un
conjunto único de instrucciones para
resolver un determinado tipo de problema.
EN COMPUTACIÓN

El algoritmo surgió con Mohammed Al-


Khowarizmi que era un matemático persa que
vivió durante el siglo IX y que se hizo famoso
por el enunciado de las reglas paso a paso para
sumar, restar, multiplicar y dividir números
decimales; pero mucho antes que eso ya Euclides,
que fue el gran matemático griego (del siglo IV
antes de Cristo), inventó un método para
encontrar el máximo común divisor de dos
números. Por eso a estos dos grandes
matemáticos se los
considera como los padres de la ciencia de la
Algoritmia (ciencia que estudia a los algoritmos).
inventaran las computadoras, los grandes
matemáticos de la antigüedad ya buscaban la
manera de descubrir un conjunto único de
instrucciones para resolver un determinado tipo
de problema.
CONCEPTO DE ALGORITMO

Un Algoritmo es una secuencia ordenada y cronológica


de pasos que nos llevan a la solución del problema o a la
ejecución de una tarea.
Los pasos deben ser simples, claros, exactos, deben seguir
un orden y deben tener un principio y un fin.
A CONTINUACIÓN

Veremos un ejemplo para notar las características arriba


mencionadas:

• Cambiar un foco quemado


1. Quitar el foco quemado.
2. Colocar el foco nuevo.
Estos dos pasos parecen resolver el problema. Pero supongamos
que estamos entrenando un robot para que realice esta tarea.
Para este caso lo anterior no funcionará pues tendremos que
ser más específicos y más claros, por ejemplo:
RESOLUCIÓN

1. Inicio
2. Elegir un foco
3. Traer la escalera
4. Colocar la escalera debajo del foco
5. Subir la escalera hasta alcanzar el foco
6. Girar el foco hacia la izquierda hasta que
esté suelto
7. Poner el foco nuevo en el mismo lugar
8. Girar hacia la derecha hasta que el foco
quede fijo
9. Bajar la escalera
10. Fin
HAY ALGORITMOS QUE NO CUMPLEN CON LAS CONDICIONES
EXPLIC ADAS MÁS ARRIBA Y CONTIENEN PASOS
QUE NO SE PUEDEN EJECUTAR. POR EJEMPLO:

1. inicio
2. Haga una lista de todos los números enteros.
3. Ordene esa lista en orden descendente (de mayor a menor).
4. Borre el primer entero de la lista resultante.
5. fin
Este no es un algoritmo porque hay pasos que no podemos
ejecutar
¿PORQUÉ?

Primero: El paso número dos nos pide una


lista de números enteros y no la podemos
hacer pues los números son infinitos (un
algoritmo debe tener un principio y un fin). En
este caso no tenemos fin.
Segundo: El paso número tres nos pide que
ordenemos la lista en orden descendente. Al
no haber lista no la podemos ordenar.
ANALICEMOS PORQUE LA SECUENCIA DE
INSTRUCCIONES QUE SEGUIMOS NO ES UN
ALGORITMO VÁLIDO?

Paso Número 1: Tome una moneda de su bolsillo


y póngala sobre la mesa.
Paso Número 2:Vuelva al paso número 1.
El problema principal de este algoritmo es que pide
que se saque monedas del bolsillo eternamente.
Nunca se detiene.
Se podría modificar de la siguiente manera la
secuencia de pasos para que sea un algoritmo
válido:
ANALICEMOS PORQUE LA SECUENCIA DE
INSTRUCCIONES QUE SEGUIMOS NO ES UN
ALGORITMO VÁLIDO?

1. Paso Número
1: Si no hay monedas en el bolsillo, deténgase; en
caso contrario, saque una de ellas y colóquela
sobre la mesa.
1. Paso Número 2:Vuelva al paso número 1.
PARA REPASAR UN POCO PODEMOS
DECIR QUE:

Para resolver un problema, debemos diseñar un algoritmo (que


son una secuencia de pasos ordenados) que nos permita resolver
el problema en cuestión. Primero escribimos en nuestro
lenguaje natural que utilizamos para comunicarnos con los seres
inteligentes que razonan. Pero en Informática, donde nos
tenemos que comunicar con una máquina, y decirle lo que tiene
que hacer, no lo podemos hacer en nuestro idioma corriente. Ese
algoritmo que lo escribimos en nuestro lenguaje completo, lo
debemos volver a escribir utilizando un conjunto bien definido
de palabras del idioma inglés. Lo que resulta es un programa que
puede ser ejecutado por la computadora.
PROGRAMA

• Es un conjunto de órdenes mediante el


cual se le dice a la computadora qué
debe hacer y cómo lo debe hacer. Ese
programa está escrito en un lenguaje
que la computadora puede entender.
LOS PASOS QUE DEBEMOS SEGUIR PARA QUE UNA
COMPUTADORA PUEDA REALIZAR UNA TAREA, SON LOS
SIGUIENTES:
LOS PASOS QUE DEBEMOS SEGUIR PARA QUE UNA
COMPUTADORA PUEDA REALIZAR UNA TAREA, SON LOS
SIGUIENTES:

1. Debemos describir en forma ordenada todos


los pasos que ella debe seguir para realizar esa
tarea. Esta parte se denomina Análisis y
diseño del algoritmo.
2. Todos los pasos que hemos descripto (o sea el
algoritmo resultante), lo debemos transcribir
en un lenguaje que la computadora pueda
entender. (Obtenemos de esta manera el
Programa). Esta parte se denomina Fase de
Codificación.
3. Se corre el programa en la computadora, que
sería la fase de Ejecución
CON ESTO PODEMOS DECIR QUE SIN UN
ALGORITMO NO EXISTE EL PROGRAMA

Más adelante veremos que existen muchos lenguajes de programación; pero los algoritmos son totalmente
independientes tanto del lenguaje que vamos a usar para obtener el programa como de la computadora que va a
ejecutar ese programa. Para aclarar un poco esto podemos dar un ejemplo de la vida diaria: Una receta de cocina puede
estar escrita en castellano, inglés o alemán pero el algoritmo (los pasos que debemos seguir para obtener el plato),
siempre va a ser el mismo, independientemente del idioma que hable el cocinero.
En Informática, los algoritmos son mucho más importantes que los lenguajes de programación o las computadoras,
porque tanto los lenguajes de programación como la computadora, son solo una herramienta necesaria para que el
programa se ejecute.
LAS C ARACTERÍSTIC AS MÁS IMPORTANTES
QUE DEBE CUMPLIR TODO ALGORITMO
SON:

• Un algoritmo tiene que ser preciso (justo, exacto,


no aproximado) e indicar el orden que deben
seguir los pasos.
• Un algoritmo debe estar bien definido (si
seguimos el algoritmo más de una vez, siempre
debemos llegar al mismo resultado).
• Un algoritmo debe ser finito (Se debe obtener el
resultado en un tiempo humanamente
razonable).
TODO ALGORITMO ESTÁ COMPUESTO
POR TRES PARTES

En el ejemplo de la receta de
cocina las partes serían:
• Entrada: Los ingredientes y utensilios
de cocina que vamos a usar.
• Proceso: La elaboración de la receta
(la mezcla de todos los ingredientes).
• Salida: El plato terminado (por
ejemplo una torta).

También podría gustarte