Académique Documents
Professionnel Documents
Culture Documents
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Qu es Algoritmo?
Algoritmos
Definiciones:
Un algoritmo es un mtodo para resolver un
problema mediante una serie de pasos precisos,
definidos y finitos.
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Caractersticas del Algoritmo:
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Resolucin de Problemas
La resolucin de problemas con computadoras se pueden
dividir en tres fases:
Anlisis del problema
Diseo del algoritmo
Resolucin del algoritmo en la computadora
Algoritmos
Resolucin de Problemas
El anlisis y el diseo del algoritmo requiere la
descripcin del problema en subproblemas a base de
refinamientos sucesivos y una herramienta de
programacin:
Diagrama de flujo
Pseudocdigo
Esta ltima representacin es la mas utilizada por su sencillez y
parecido a el lenguaje humano.
Durante la tercera etapa se implementa el algoritmo en
un cdigo escrito en un lenguaje de programacin,
reflejando las ideas obtenidas en las fases de anlisis y
diseo.
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Anlisis del Problema
Diseo del algoritmo
Implementacin
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
IE
N
T
O
INPUT
Algoritmo
OUTPUT
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Anlisis del Problema
Diseo del algoritmo
Implementacin
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
IE
N
T
O
Programar un mdulo.
Comprobar el mdulo.
Depurar el mdulo.
Combinar el mdulo, con el resto de los otros
mdulos
Inicio
Declaro las variables de entrada y salida
Leo el valor de RADIO y Pi
Calculo el valor de CIRCUNFERENCIA=2 Pi RADIO
Calculo el valor de AREA= Pi (RADIO)2
Imprimo el valor de CIRCUNFERENCIA
Imprimo el valor de AREA
Fin
Administrar Contactos
Agregar
Contactos
Eliminar
Contactos
Editar
Contactos
Contactos por
Autorizar
Administrar Institucin
Agregar
Institucin
Eliminar
Institucin
Editar
Institucin
Institucin por
Autorizar
Autorizacin de Datos
por Institucin
Acceso
Restringido
Administrar Cursos
Agregar
Cursos
Eliminar
Cursos
Editar
Cursos
Curso(s) por
Autorizar
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Anlisis del Problema
Diseo del algoritmo
Implementacin
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
IE
N
T
O
System.out.println("r= " + radio + "\tPerimetro= " + perimetro + " \tArea= " + area);
System.exit(0);
}
Imprimo Permetro y Area
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
IE
N
T
O
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
IE
N
T
O
Errores de Ejecucin:
Errores Lgicos:
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
I
E
N
T
O
Anlisis del
Problema
Diseo del
Algoritmo
Depuracin y
Verificacin
Compilacin y
ejecucin
Codificacin
D
O
C
U
M
E
N
T
A
C
I
M
A
N
T
E
N
I
M
I
E
N
T
O
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Tcnicas de Diseo
Top Down:
El problema se descompone en etapas o estructuras
jerrquicas, de modo que se puede considerar cada
estructura como dos puntos de vista : lo que hace?, y
cmo lo hace ?. Si se considera un nivel n de
refinamiento, las estructuras se consideran de la
siguiente forma :
nivel n :
Vista desde el exterior.
"lo que hace ?"
Nivel n+1 :
Vista desde el interior.
"cmo lo hace ?"
Algoritmos
Tcnicas de Diseo
Top Down:
Ejemplo de un control de almacn:
Algoritmos
Tcnicas de Diseo
Bottom Up:
Este mtodo es el inverso del anterior y es recomendable
cuando se tiene un modelo a seguir o se cuenta con
amplia experiencia en la resolucin de problemas
semejantes.
Algoritmos
Tcnicas de Diseo
Warnier Orr:
Es una tcnica que utiliza una representacin semejante a la de
cuadros sinpticos para mostrar el funcionamiento y
organizacin de los elementos que conforman el algoritmo.
Utiliza la siguiente simbologa para indicar operaciones de
control.
SIMBOLO
SIGNIFICADO
(x,y)
Algoritmos
Tcnicas de Diseo
Warnier Orr:
Los diagramas se leen de izquierda a derecha y de arriba hacia
abajo.
Algoritmos
Qu es un algoritmo?
Caractersticas
Resolucin de Problemas
Fases para la solucin de problemas
Tcnicas de Diseo
Tcnicas para la formulacin de algoritmos
Tiempo de ejecucin del algoritmo
Ejemplos
Complejidad
Desempeo
Algoritmos
Tcnicas para la Formulacin de Algoritmos
Diagramas de Flujo:
Se basan en la utilizacin de diversos smbolos para
representar operaciones especficas.
Se les llama diagramas de flujo porque los smbolos utilizados
se conectan por medio de flechas para indicar la secuencia
de operacin.
Decisin
Decisin
Calcular el
rea y el
permetro de
una
circunferencia
Inicio
RADIO
Pi
CIRCUNFERENCIA=2*Pi*RADIO
AREA=Pi*(RADIO)2
CIRCUNFERENCIA
AREA
Fin
Inicio
EJEMPLO
Leer nombre,
horas, precio
salario_bruto
impuesto
salario_neto
horas * precio
0.20 * salario_bruto
salario_bruto - impuesto
Escribir
nombre,
salario_bruto,
salario_neto
Fin
Algoritmos
Calcule el salario neto de un trabajador en base a las
siguientes consideraciones:
Para un salario bruto menor de $10,000.00 no hay
retencin
Si el salario bruto est entre $10,000.00 y $30,000.00
la retencin es del 8%
Si el salario bruto es mayor de $30,000.00 la retencin
es del 15%.
Bibliografa
Metodologa de la Programacin
Algoritmos, Diagramas de Flujo y Programas
Cairo Battistutti Osvaldo
Alfa Omega, Computec, Mxico, D.F.
1995
Fundamentos de Algoritmia
Brassord G., Bratley P.
Pearson Education. USA
III Edicin, 2000
Fundamentos de Programacin, Algoritmos,
Estructuras de Datos y Objetos
Joyanes Aguilar Luis
McGraw-Hill / Interamericana de Espaa, S.A.
III Edicin, 2002
Bibliografa
Introduction to Algorithmics
T.H. Cormen, C.E. Leiserson, R.L. Rives
The MIT Press / Mc Graw Hill
1990
Desarrollo de Algoritmos y sus aplicaciones
Correa Uribe, Guillermo
Mc Graw - Hill Inc. USA
III Edicin, Abril/1992
Algortmica, Anlisis y Diseo de Algoritmos
Glvez Javier, Gonzlez Juan
RA-MA (Addison-Wesley Iberoamericana)
II Edicin, Septiembre/1993
Anlisis y Diseo de Sistemas de Informacin
Sean, James A
McGraw Hill USA
II Edicin, Diciembre/1998
Bibliografa
Lenguajes de Diagramas de Flujo
Forsythe, Keenan, Organick, Stenberg
Editorial Limusa
1989
ISBN 968-18-0813-4
Algoritmos