Algoritmo Estructura de Datos
Algoritmo Estructura de Datos
Algoritmo Estructura de Datos
CONCEPTOS PREVIOS
E PROCESADOR S
Datos Información
ALGORITMO
Algoritmo
Conjunto de instrucciones que especifican la secuencia de pasos ordenados de operaciones
a realizar, para dar solución a un problema.
Programa
Secuencia de instrucciones que especifican las operaciones que debe realizar la
computadora, en la cual cada paso del algoritmo está expresado por medio de una
instrucción.
Programas Traductores
Traducen los programas fuente a código máquina. Pueden ser:
INTERPRETE
PROGRAMA
EJECUTABLE
COMPILADOR
PROGRAMA
OBJETO
COMPILADOR
(Traductor)
PROGRAMA
OBJETO
PROGRAMA
ENLAZADOR
PROGRAMA
EJECUTABLE
Programación Estructurada
Conjunto de técnicas para escribir, verificar, depurar, y mantener los programas, es una
metodología de desarrollo de programas llamada refinamientos sucesivos: se plantea una
operación como un todo y se divide en segmentos más sencillos o de menor complejidad.
Una vez terminado todos los segmentos del programa, se procede a unificar las
aplicaciones, esta integración debe ser sencilla.
La representación grafica de la programación estructurada se realiza a través de diagramas
de flujo o flow chart, Diagramas N-S, el cual representa el programa con sus entradas,
procesos y salidas y Pseudocodigos.
1. Recursos Abstractos
Descomponer una determinada acción compleja en acciones más simples, para ser
ejecutadas y que serán instrucciones.
2. Diseño Descendente
El problema se descompone en niveles o pasos sucesivos: que hace? Como lo
hace?
Que hace
Como hace
3. Estructuras básicas
Son estructuras de control para el programa:
- Secuenciales
- Selectivas
- Repetitivas
- Matrices,
- Etc.
ALGORITMO
La palabra algoritmo se dio en honor del matemático persa del siglo IX, Khowârizmî.
Es decir con éste término se hace referencia a un conjunto de reglas, ordenadas de forma
lógica, para desarrollar un cálculo o para solucionar un problema, ya sea de forma manual
o utilizando una máquina.
Características de un algoritmo
• Ser preciso: los pasos del algoritmo deben desarrollarse en un orden estricto, ya que el
desarrollo de cada paso debe obedecer a un orden lógico.
• Ser definido. en el área de programación, el algoritmo se desarrolla como paso
fundamental para desarrollar un programa. El computador solo desarrollará las tareas
programadas y con los datos suministrados; no puede improvisar el dato que necesite
para realizar un proceso.
• Ser finito: implica que el número de pasos de un algoritmo, por grande y complicado
que sea el problema que soluciona, debe ser limitado, es decir debe llegar a un final.
• Presentación formal: para que el algoritmo sea entendido por cualquier persona
interesada es necesario que se exprese en alguna de las formas comúnmente aceptadas; si
no puede no ser muy útil ya que solo lo entenderá quien lo diseñó. Las formas de
presentación de algoritmos son: el pseudocódigo, diagrama de flujo y diagramas de
Nassi/Schneiderman, entre otras.
• Corrección: el algoritmo debe ser correcto, debe solucionar el problema para el cual fue
diseñado. Para garantizar que el algoritmo logre el objetivo, es necesario ponerlo a
prueba: verificación o prueba de escritorio.
• Eficiencia: es evaluar los recursos que requiere para almacenar datos y para ejecutar
operaciones frente al beneficio que ofrece. En cuanto menos recursos requiere será más
eficiente el algoritmo.
b. Diagrama de Flujo Estructurado: representación con flujos entre los procesos a realizar.
Los principales símbolos de representación para este diagrama son.
Subrutinas en el algoritmo
c. Diagrama N-S: representación en bloques, es decir cada uno de los procesos como
ingreso/salida de datos, decisiones, acciones, repeticiones; están representados en
bloques de tareas consecutivos.
INICIO
Declaración de variables: N1, N2, suma
Lectura de Datos:
Acción 1: suma
Acción 2
Acción n
Reporte de Datos
FIN