Algortimos Flashcards
¿Qué es un algoritmo?
Es un conjunto de pasos, procedimientos o acciones en una secuencia ordenada que nos permiten alcanzar un resultado o resolver un problema.
Características de un algoritmo:
Ordenado, Finito, Preciso, Definido
Forma de un algoritmo
- Bloques consecutivos de instrucciones (lista de pasos)
- Bloques de instrucciones opcionales (tomar decisiones)
- Bloques de instrucciones que se repiten una y otra vez
Cada lenguaje de programación define reglas de escritura:
Léxicas, Sintácticas y Semánticas
Pasos para la resolución de problemas
Analizar el problema (Identificar datos de entrada, de salida y proceso)
Diseñar la solución (escribir un algoritmo)
Desarrollar la solución (escribir el programa)
Un algoritmo suele tener:
Instrucciones de decisión
Instrucciones repetitivas
Cálculos matemáticos
Instrucciones secuenciales
Análisis de un algoritmo:
- Identificar qué tipo de información es necesaria producir (salidas)
- Identificar aquellos elementos de información ofrecidos por el problema y que resulten útiles para obtener la solución del problema (entradas)
- Identificar las operaciones necesarias para producir los resultados deseados a partir de los datos (proceso)
Diagrama de flujo:
es la representación gráfica de un algortimo.
- Utiliza figuras geométricas en lugar de palabras
- Símbolos estándar
- Cada paso del algoritmo se visualiza dentro de un símbolo
- El orden se indica flechas (líneas de flujo)
Lenguajes de Programación
Permite a los programadores introducir órdenes a la computadora.
Clasificación de los lenguajes:
- Área de aplicación
- Nivel de abstracción
- Paradigma de programación
Área de aplicación
- Procesamiento de negocios
- Científicos (Matlab)
- De sistemas (Windows, Linux)
- De procesos (Visual Basic, Java, Phyton)
Nivel de Abstracción. Bajo Nivel
Se encuentran más próximos a la arquitectura de la máquina
Nivel de Abstracción. Alto Nivel
Se encuentra más próximo al programador. Mayor facilidad en el desarrollo, depuración y mantenimiento de los programas.
Son independientes de la arquitectura de la computadora utilizada.
Necesitan un traductor
Nivel de Abstracción. Medio Nivel
Son más fáciles de entender que los de bajo nivel y genera programas más eficientes que los de alto nivel pero también necesitan un traductor.
Paradigma de Programación.
- Imperativos. Son implementaciones de algoritmos.
- Funcionales. Es una colección de funciones matemáticas.
- Lógicos. Es una colección de reglas de forma de proposiciones lógicas.