Académique Documents
Professionnel Documents
Culture Documents
Parcial 1 Presentacin 1
5. Verificacin.
6. Depuracin.
3. Codificacin.
7. Mantenimiento.
DISEO ESTRUCTURADO
DE ALGORITMOS
2
DISEO ESTRUCTURADO
DE ALGORITMOS
3
DISEO ESTRUCTURADO
DE ALGORITMOS
4
Algoritmo
Es un mtodo para resolver un problema mediante una serie de
pasos precisos, definidos y finitos.
Caractersticas
Preciso. Indica el orden de realizacin de cada paso.
Definido. Si se realiza dos veces, obtiene el mismo resultado.
Finito. Tiene fin, un nmero determinado de pasos.
DISEO ESTRUCTURADO
DE ALGORITMOS
5
Lenguaje
Los lenguajes de programacin sirven para escribir programas que
permitan la comunicacin usuario/mquina . Programas especiales
llamados traductores convierten las instrucciones escritas en
lenguaje de programacin en lenguaje de mquina (0 y 1, bits) .
Los principales tipos de lenguajes utilizados son tres:
Lenguajes mquina.
Lenguajes de bajo nivel (ensamblador o de mquina).
Lenguajes de alto nivel.
*Investigar los tres tipos de lenguajes
DISEO ESTRUCTURADO
DE ALGORITMOS
6
Instrucciones a la computadora
Un programa consta de una secuencia de instrucciones y cada una
especifica operaciones que debe ejecutar la computadora. Las
instrucciones comunes de casi todos los lenguajes de programacin
se pueden condensar en cuatro grupos:
Instrucciones de entrada/salida. Instrucciones de transferencia de datos
entre dispositivos perifricos.
DISEO ESTRUCTURADO
DE ALGORITMOS
7
Traductores de Lenguaje
Los traductores de lenguajes son programas que traducen los
programas fuente escritos en lenguaje de alto nivel a cdigo de
mquina. Los traductores se dividen en compiladores e intrpretes.
Intrpretes. Es un traductor que toma un programa fuente, lo
traduce y a continuacin lo ejecuta.
Compiladores. Despus que se ha diseado el algoritmo y escrito el
programa en un papel se debe iniciar el proceso de introducir el
programa en un archivo. La traduccin de lenguaje de alto nivel a
lenguaje de bajo nivel se hace mediante un compilador.
DISEO ESTRUCTURADO
DE ALGORITMOS
8
DISEO ESTRUCTURADO
DE ALGORITMOS
9
Herramientas de Programacin
Las dos herramientas ms utilizadas para disear algoritmos son:
diagramas de flujo y pseudocdigos.
Diagramas de Flujo. Un diagrama de flujo es una representacin
grfica de un algoritmo, los smbolos utilizados han sido
normalizados por el Instituto Norteamericano de Normalizacin
(ANSI).
Pseudocdigo. Es una herramienta de programacin en la que las
instrucciones se escriben en palabras similares al ingls o el espaol
y facilitan tanto la escritura como la lectura de programas.
DISEO ESTRUCTURADO
DE ALGORITMOS
10
DISEO ESTRUCTURADO
DE ALGORITMOS
11
DISEO ESTRUCTURADO
DE ALGORITMOS
12
DISEO ESTRUCTURADO
DE ALGORITMOS
13
DISEO ESTRUCTURADO
DE ALGORITMOS
14
DISEO ESTRUCTURADO
DE ALGORITMOS
15
DISEO ESTRUCTURADO
DE ALGORITMOS
16
DISEO ESTRUCTURADO
DE ALGORITMOS
17
Codificacin
Es la escritura en un lenguaje de programacin de la representacin
del algoritmo desarrollado en las etapas precedentes.
Para realizar la conversin de algoritmo en programa es necesario
sustituir palabras reservadas, y las operaciones o instrucciones
indicadas en lenguaje natural expresarlas en el lenguaje de
programacin correspondiente.
DISEO ESTRUCTURADO
DE ALGORITMOS
18
DISEO ESTRUCTURADO
DE ALGORITMOS
19
DISEO ESTRUCTURADO
DE ALGORITMOS
20
10
DISEO ESTRUCTURADO
DE ALGORITMOS
21
Documentacin y Mantenimiento
La documentacin de un programa puede ser interna y externa. La
documentacin interna es la contenida en lneas de comentarios. La
documentacin externa incluye anlisis, diagramas de flujo y/o
seudocdigos, manuales de usuario con instrucciones para ejecutar
el programa y para interpretar los resultados.
La documentacin es vital cuando se desea corregir posibles errores
futuros o bien cambiar el programa. Tales cambios se denominan
mantenimiento del programa. Despus de cada cambio la
documentacin debe ser actualizada. Es prctica frecuente numerar
las sucesivas versiones de los programas 1.0, 1.1, 2.0, 2.1.
*Slo cuando son cambios importantes cambia el primer dgito.
DISEO ESTRUCTURADO
DE ALGORITMOS
22
11
Ejercicio
Se requiere un algoritmo para obtener el promedio de un estudiante a
partir de sus dos calificaciones parciales.
DISEO ESTRUCTURADO
DE ALGORITMOS
23
DISEO ESTRUCTURADO
DE ALGORITMOS
24
12
Programacin Modular
La programacin modular es uno de los mtodos de diseo ms
flexible y potentes para la productividad de un programa. En
programacin modular el programa se divide en mdulos (partes
independientes) cada una de las cuales ejecuta una actividad o tarea
y se codifican independientemente. Si la tarea asignada a cada
submdulo es demasiado compleja, ste debe romperse en mdulos
ms pequeos.
Un mdulo puede transferir (bifurcar) el control a otro mdulo; sin
embargo, cada mdulo debe devolver el control al mdulo del cual
se recibe el control.
*Programacin modular.
DISEO ESTRUCTURADO
DE ALGORITMOS
25
Programacin Modular
En la programacin modular los mdulos son independientes, dado
esto, diferentes programadores pueden trabajar simultneamente
en diferentes partes del mismo programa. Esto reducir el tiempo de
diseo del algoritmo y la codificacin del programa.
La descomposicin de un programa en mdulos independientes ms
simples se conoce tambin como el mtodo de divide y vencers.
DISEO ESTRUCTURADO
DE ALGORITMOS
26
13
Programacin Estructurada
La programacin estructurada significa escribir un programa de
acuerdo a las siguientes reglas:
El programa tiene un diseo modular.
Los mdulos son diseados de modo descendente.
Cada mdulo se codifica utilizando las tres estructuras de control
bsicas: secuencia, seleccin y repeticin.
La programacin estructurada utiliza un nmero limitado de
estructuras de control que minimizan la complejidad de los
programas y, por consiguiente, reducen los errores; hace los
programas ms fciles de escribir, verificar, leer y mantener.
DISEO ESTRUCTURADO
DE ALGORITMOS
27
Programacin Estructurada
Las estructuras de control de un lenguaje de programacin son
mtodos de especificar el orden en que las instrucciones de un
algoritmo se ejecutarn. El orden de ejecucin de las sentencias
(lenguaje) o instrucciones determinan el flujo de control.
DISEO ESTRUCTURADO
DE ALGORITMOS
28
14
Ejercicio
Se requiere un algoritmo que permita ingresar el nmero de partidos
ganados, perdidos y empatados por un equipo de futbol. Se debe
mostrar su puntaje final, tomando en cuenta que por cada partido
ganado obtiene 3 puntos, empatado 1 punto y perdido 0 puntos.
DISEO ESTRUCTURADO
DE ALGORITMOS
29
30
15