Documento 03
Documento 03
Documento 03
Algoritmo
De acuerdo con la naturaleza del funcionamiento de las computadoras, se dice que estas
siempre ejecutan órdenes en un formato que les resulta inteligible; dichas órdenes se agrupan
en programas, conocidos como software, el cual, para su estudio, a su vez, se divide en dos
partes: el formato de representación interno de los programas, que constituye el lenguaje
máquina o código ejecutable, y el formato de presentación externa, que es un archivo o un
conjunto de archivos, que puede o no estar en un formato que puede ser visto/leído por el
usuario (es decir, en un formato que respeta las reglas)
Un algoritmo constituye una lista bien definida, ordenada y fi nita de operaciones, que permite
encontrar la solución a un problema determinado. Dado un estado inicial y una entrada, es a
través de pasos sucesivos y bien definidos que se llega a un estado final, en el que se obtiene
una solución (si hay varias) o la solución (si es única).
Ejemplo Problema: Gestionar la lista de compras que una empresa realiza durante un mes.
• Lenguaje natural (a veces, este no resulta muy claro, pero es muy útil para problemas
simples)
• Pseudocódigo
• Diagramas de flujo
• Programas
Es evidente que el lenguaje natural es de mayor utilidad para transmitir las ideas del algoritmo.
Al contrario, un programa es difícil de entender por simple lectura, aun por una persona que
conoce el lenguaje del programa, e imposible para aquellas que no lo conocen. El pseudocódigo
y los diagramas de flujo, en cambio, se sitúan en un punto intermedio de comprensión, entre el
lenguaje natural y un programa. Estas dos herramientas poseen un poder de expresión
equivalente; no obstante, los diagramas de flujo tienen la ventaja de ser más gráficos y visuales
1. Descripción de alto nivel. El primer paso consiste en la descripción del problema; luego, se
selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con
ilustraciones, pero omitiendo detalles.
2. Descripción formal. En este nivel se usa un pseudocódigo o diagrama de flujo para describir
la secuencia de pasos que conducen a la solución.
Las etapas de desarrollo de un algoritmo, con base en la lógica, son las siguientes:
1. Definición. En esta etapa se especifica el propósito del algoritmo y se ofrece una definición
clara del problema por resolver. Además, aquí también se establece lo que se pretende lograr
con su solución.
3. Diseño. Aquí es donde se plasma la solución del problema. Con ese fi n, se emplea una
herramienta de diseño, que consiste en el diagrama de flujo y el pseudocódigo.
Ejemplo 1:
En este caso, la definición del problema es el enunciado mismo: “Probar si un número entero N
es o no divisible entre 3”.
Para la resolución del problema de este ejemplo, conocemos la definición de la divisibilidad: “un
número N es divisible entre otro número k, si la división N ÷ k es exacta (o el resto es 0)”.
• Asimismo, existen métodos que presentan diferentes grados de dificultad para un ser
humano: Realizar la división n ÷ k y comprobar si es exacta.
• Efectuar la suma de las cifras que componen el número en base 10 y verificar si el
número es divisible entre 3.
De acuerdo con la naturaleza del ser humano, él puede aplicar con mayor facilidad el segundo
método, debido a que la división de la suma de las cifras y el cálculo mismo de la suma son más
simples que la división inicial; sin embargo, para la computadora es lo mismo realizar la división
de 78564589 entre 3 o la división de 52 entre 3. En el segundo caso, en cambio, es necesario
hacer la extracción de las cifras y luego la suma de las cifras; entonces, la resolución del problema
es simple, como lo establecen los siguientes pasos:
Ejemplo 2.
Un programa informático se define como un conjunto de instrucciones que, una vez ejecutado,
realiza una o varias tareas en una computadora. De esta forma, sin programas, una computadora
no puede realizar las actividades para las que fue diseñada y creada