Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTRODUCCIÓN A
ALGORITMOS DE
PROGRAMACIÓN
OBJETIVOS DEL DISEÑO DE
ALGORITMOS
Algoritmo
Implementación
USO DE METODOLOGÍAS PARA SOLUCIONAR
PROBLEMAS
Ciclo de programación.
CICLO DE PROGRAMACIÓN
EL PROBLEMA
1^1 2^ 2 3^3 4^ 4 n^ n
1! 2! 3!
4!
.........
n!
Algoritmo
Implementación
DISEÑAR UN ALGORITMO
ALGORITMOS
¿Qué es un algoritmo?
Un algoritmo es el conjunto de
operaciones y procedimientos
que deben seguirse para
transformar los datos de entrada
en datos de salida (solución al
problema)
ALGORITMOS
¿Cómo se representan?
Diagramas de flujo Pseudocódigo
CONCEPTOS BÁSICOS DE Inicio
PROGRAMACIÓN
Leer n
Constantes
Variables
Acumuladores i=1 a=0
Contadores
Tipos de datos i=i+1 a=a + i
Operadores y expresiones
Estructuras de control y anidamiento
i=n
a
Acumula números
naturales desde 1
hasta n Fin
PSEUDOCÓDIGO
función acumulanaturales(n)
// n es un número natural
i←1
a←0
mientras i<=n hacer
a←a+i
i←i+1
fin mientras
devolver a
fin función
PSEUDOCÓDIGO
1^1 2^ 2 3^3 4^ 4 n^ n
Problema
1! 2! 3!
4!
.........
n!
PSEUDOCÓDIGO
1^1 2^ 2 3^3 4^ 4 n^ n
Problema
1! 2! 3!
4!
.........
n!
Codificación
función miproblema(n)
// n es un número natural
i←1
suma←0 ¿ Y ahora ?
mientras i<=n hacer
a ← a + (i^2) / Factorial(i)
i←i+1
fin mientras
devolver suma
fin función
DISEÑO DE ALGORITMOS
Problema
Algoritmo
Implementación
IMPLEMENTACIÓN DEL ALGORITMO
Pseudocódigo
función miproblema(n)
// n es un número natural
i←1
suma←0
mientras i<=n hacer
a ← a + (i^2) / Factorial(i)
i←i+1
fin mientras
devolver suma
fin función
IMPLEMENTACIÓN EN MATHCAD
Pseudocódigo MathCad
función miproblema(n)
// n es un número natural
i←1
suma←0
mientras i<=n hacer
a ← a + (i^2) / Factorial(i)
i←i+1
fin mientras
devolver suma
fin función
PRUEBA Y VALIDACIÓN DE
NUESTRO PROBLEMA
¿POR QUÉ DEBEMOS DEPURAR LOS
PROCEDIMIENTOS?
Dificultad para elaborar procedimientos perfectos en los primeros
intentos.
La dificultad aumenta a medida que los problemas se vuelven más
complejos.
Los resultados se deben probar y validar (revisión).
El proceso promueve valores como responsabilidad, fortaleza,
laboriosidad, paciencia y perseverancia.
COMPARATIVO ENTRE ALGORITMOS,
PSEUDOCÓDIGO Y LENGUAJE DE
PROGRAMACIÓN
Parámetros
de Algoritmos Pseudocódigo Lenguajes de Programación
Análisis
Conjunto de sintaxis y
Suceso finito de pasos Lenguaje de
reglas semánticas que
no ambiguos que se especificación de
definen programas del
pueden ejecutar en un algoritmos basado en
Concepto computador.
tiempo finito, cuyo un sistema notarial, con
Cada lenguaje tiene sus
objetivo es resolver estructuras sintácticas y
características
problemas. semánticas.
particulares.
Utiliza palabras
Herramienta gráfica
reservadas de algunos Similares a un idioma,
compuesta por
lenguajes de están escritos en inglés
símbolos, unidos por
Cómo se exteriorizan programación, como: y cada lenguaje tiene
flechas, donde cada
start, end, if-then-else, sus características
símbolo representa una
while, etc.; para su particulares.
acción distinta.
escritura.
COMPARATIVO ENTRE ALGORITMOS,
PSEUDOCÓDIGO Y LENGUAJE DE
PROGRAMACIÓN
Parámetros
de Algoritmos Pseudocódigo Lenguajes de Programación
Análisis
Independiente de todo
lenguaje de programación; y
Independientes de todo
en algunos casos del
Relación lenguaje de programación e Dependen de los algoritmos
algoritmo (hay
Dependencia/ incluso de todas y/o pseudocódigos que le
programadores que
Independencia computadora donde se dan origen.
desarrollan así).
ejecute.
Facilita la traducción a un
lenguaje de programación.