1. ALGORITMO.
Al tratar de hacer una definición de algoritmo, la mayoría de los autores coinciden en que: Como
podemos darnos cuenta, un algoritmo es una serie de pasos que debemos realizar (ejecutar) para
llegar a la solución de un problema, ya sea de la vida diaria o computacional. Se debe seguir una
serie de pasos con el fin de llegar a un objetivo.
El término Algoritmo proviene del nombre del matemático árabe Alkhorezmi (780–850),quien escribió
un tratado sobre cálculos matemáticos hace 1200 años.
El algoritmo nos da la solución genérica a un problema y lo podremos emplear todas las veces que
se nos presente.
En la vida cotidiana, para resolver diversos problemas empleamos, algoritmos en multitud de
ocasiones, como por ejemplo, para escuchar un CD en un reproductor de música, se realizan los
siguientes pasos.
1. Encender el reproductor de música.
2. Presionar el botón Eject para abrir la unidad de CD.
3. Insertar el CD de audio en la unidad.DISEÑA Y ELABORA ALGORITMOS
4. Presionar el botón de Eject para cerrar la unidad de CD.
5. Esperar a que la unidad detecte el CD e inicie la reproducción.
6. Ajustar el volumen.
7. Escuchar la música.
Podemos deducir que es necesario seguir en forma estricta el orden de estos pasos, ya que
si saltas del paso tres al paso seis no obtendrás el resultado esperado, que en este caso es
escuchar música.
Como puedes darte cuenta, los algoritmos están en todas partes y los aplicamos a cada
momento.
Existen algoritmos de la vida diaria y algoritmos computacionales para el procesamiento de datos.
Los algoritmos computacionales son el paso previo para la creación de un programa computacional,
el cual es creado y diseñado por una persona con los conocimientos informáticos necesarios para
convertir esa secuencia de pasos, en una aplicación, por medio de un lenguaje de programación. A
estas personas se le conoce como programadores. Para que un programa sea bueno debe ser
preciso y efectivo en la resolución de un problema, por lo tanto, es necesario que se realice
primeramente el algoritmo, y deberá definir exactamente una entrada, el proceso y la salida.
Por ejemplo, en el algoritmo de una multiplicación de dos números se tiene:
¨ Entrada: los dos valores o números.
¨ Proceso: multiplicación de los números.
¨ Resultado de la operación.
Una vez que la solución de un problema ha sido expresado mediante un algoritmo, el paso siguiente
es convertirlo auna programa, para lo cual se elige un lenguaje de programación. De modo que un
programa resulta ser la implementación de un algoritmo en un determinado lenguaje de
programación.
Los algoritmos se convierten en programas por medio de un lenguaje de programación, que es una
técnica estándar
2. de comunicación que expresa las instrucciones que van a ser ejecutadas por la computadora. Las
computadoras manejan el lenguaje máquina, (a base de 0 y 1), por lo que los lenguajes de
programación deben traducirse a lenguaje máquina por medio de un proceso llamado compilación.
Medios de expresión de un algoritmo.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,
pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en
lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita
muchas ambigüedades del lenguaje natural.
Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se
mantienen independientes de un lenguaje de programación específico. Un algoritmo computacional
se define como un conjunto de operaciones y procedimientos que deben seguirse para resolver un
determinado problema en el terreno de la informática.
BLOQUE 1
Lenguajes Algorítmicos: serie de símbolos y reglas que se utilizan para describir de manera explícita
un proceso.
Tipos de Lenguajes Algorítmicos
Gráficos: (diagrama de flujo) es la representación gráfica de las operaciones que realiza un
algoritmo.
No Gráficos: (pseudocódigo) representa en forma descriptiva las operaciones que debe realizar un
algoritmo.
La descripción de un algoritmo usualmente se hace en tres niveles:
1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se
explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que
encuentran la solución.
3. Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o
algún objeto capaz de llevar a cabo instrucciones. Muchos algoritmos son ideados para
implementarse en un programa.
Análisis de algoritmo.
El análisis y estudio de los algoritmos es una disciplina de las ciencias de la computación y, en la
mayoría de los casos, su estudio es completamente abstracto sin usar ningún tipo de lenguaje de
programación ni cualquier otra implementación; por eso, en ese sentido, comparte las características
de las disciplinas matemáticas. Así, el análisis de los algoritmos se centra en los principios básicos
del algoritmo, no en los de la implementación particular. Una forma de plasmar (o algunas veces
"codificar") un algoritmo es escribirlo en pseudocódigo o utilizar un lenguaje muy simple tal como
Léxico, cuyos códigos pueden estar en el idioma del programador.
Características de algoritmos.
Entre sus múltiples características, podemos destacar que todo algoritmo debe tener:
3. ¨ Carácter finito. “Un algoritmo siempre debe terminar después de un número finito de pasos”, debe
tener un principio (inicio) y un final (fin), ¨ Precisión. “Cada paso de un algoritmo debe estar
precisamente definido; las operaciones a llevar a cabo deben ser especificadas de manera rigurosa y
no ambigua para cada caso”, las instrucciones de los algoritmos deben ser simples, claras, concretas
y breves. ¨ Eficacia. “También se espera que un algoritmo sea eficaz, en el sentido de que todas las
operaciones a realizar en él algoritmo deben ser suficientemente básicas como para que en principio
puedan ser hechas de manera exacta y seguir un orden lógico.
¨ Es necesario que sepas que no todos los algoritmos serán ejecutados en un mismo número de
pasos, éstos pueden variar de un alumno a otro, aquí interviene mucho la inducción y lógica que
posea cada estudiante. Lo importante en la elaboración de los algoritmos es llegar a la solución del
problema.