
En pocas palabras un algoritmo es el conjunto de operaciones y procedimientos que deben seguirse para resolver un problema. En programasparapc.net podemos encontrar algunos programas y software que nos ayudara a construirlo y a resolverlo.
Características de un Algoritmo
- Definibilidad: El algoritmo debe definirse de forma precisa para cada paso, es decir, hay que evitar toda ambigüedad al definir cada paso. Puesto que el lenguaje humano es impreciso, los algoritmos se expresan mediante un lenguaje formal, ya sea matemático o de programación para un computador.
- Entrada: El algoritmo tendrá cero o más entradas, es decir, cantidades dadas antes de empezar el algoritmo. Estas cantidades pertenecen además a conjuntos especificados de objetos.Se trata siempre de cantidades representativas del mundo real expresadas de tal forma que sean aptas para su interpretación por el computador.
- Salida: El algoritmo tiene una o más salidas, en relación con las entradas.
- Efectividad: Se entiende por esto que una persona sea capaz de realizar el algoritmo de modo exacto y sin ayuda de una máquina en un lapso de tiempo finito.
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.
La descripción de un algoritmo usualmente se hace en tres niveles:
-
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.
-
Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.
-
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.
También es posible incluir un teorema que demuestre que el algoritmo es correcto, un análisis de complejidad o ambos.
Diagramas de flujo
Diagrama de flujo que expresa un algoritmo para calcular la raíz cuadrada de un número
Los diagramas de flujo son descripciones gráficas de algoritmos; usan símbolos conectados con flechas para indicar la secuencia de instrucciones y están regidos por ISO.
Los fabricantes de software grandes y pequeños ofrecen muchas formas de crear diagramas de flujo en una computadora u ordenador. Todas las herramientas funcionan de la misma manera: primero se carga el proyecto (por plantilla o nuevo), se crean bloques y luego se combinan, creando un algoritmo específico o una secuencia de acciones y eventos. Entre los mejores programas para elaborar algoritmos y diagramas de flujo se encuentran los de pagos y los gratuitos. Para elegir el adecuado para sus necesidades, debe familiarizarse con el más popular de ellos.
Pasos para realizar Algoritmos
Para la realización de un algoritmo es necesario realizar una secuencia de pasos para llegar a cumplir con la resolución de un problema dado. Para ello, definiremos los siguientes pasos:
- Análisis previo del Problema: Se debe realizar un análisis del funcionamiento del problema antes que se realice cualquier algoritmo.
- Definición de Requerimientos: Los problemas a solucionar, esto es, por ejemplo, el sumar dos números, multiplicar dos matrices, ordenar una lista de números, generar un reporte, etc.
- Identificación de los Módulos: La identificación de los módulos es tan importante como la identificación correcta de los requerimientos, esto porque la correcta identificación de los módulos simplifica considerablemente la realización de los algoritmos que darán solución a los requerimientos identificados en el paso anterior.
- Realización de los Algoritmos: El algoritmo deberá cumplir con las características que se indicaron para posteriormente implementarse en un lenguaje de programación comprensible por una computadora.
- Implementación de los Algoritmos: La implementación de los algoritmos se debe realizar en un lenguaje de programación para que una computadora pueda comprender las instrucciones que el algoritmo modela para así poder ejecutarlas y lograr el resultado esperado.
Comentarios