Texto Enseñanza MAT 1104 Tema 2
Texto Enseñanza MAT 1104 Tema 2
Texto Enseñanza MAT 1104 Tema 2
ALGORITMOS
2.1. Introducción.
CIENCIAS DE LA COMPUTACIÓN
2.2. Algoritmo.
El término algoritmo proviene del nombre del matemático musulmán Abu Abdallah Muḥammad
ibn Mūsā al-Jwārizmī. En el 825 escribió el libro fundamental de las matemáticas actuales:
Hisab al yabr ua al muqabala”, donde se describen los procesos matemáticos del álgebra, siendo
considerado el padre de nuestro sistema numérico.
Un algoritmo es una serie de pasos organizados que describe el proceso que se debe
seguir, para dar solución a un problema específico.
Definición 1: Es una secuencia de pasos lógicos para resolver un determinado problema, también
se define como un método o camino para hallar una solución a una necesidad.
Características (Principios)
- El algoritmo tiene que tener un Inicio, pasos, procesos, acciones y un Fin
- Especificación tiene que resolver un problema determinado objeto
- Generalización, tiene que resolver cualquier problema del entorno
- El algoritmo debe ser preciso e indicar el orden de realización de cada paso.
- El algoritmo debe ser definido, si se sigue un algoritmo dos veces, se debe obtener el
- mismo resultado cada vez.
- El algoritmo debe ser finito, si se sigue un algoritmo se debe terminar en algún
- momento; o sea debe tener un número finito de pasos.
Ejemplos de algoritmos
1
CIENCIAS DE LA COMPUTACIÓN
lenguajes algorítmicos.
Es una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso.
Complejidad Algorítmica
Supongamos que tengo que ordenar un fichero con carpetillas...
– A Juan se le ocurre un método...
– A Eva se le ocurre otro método...
● ¿Cuál de los dos métodos es mejor?
● La teoría de la complejidad computacional se encarga de indicar cuál es más eficiente.
Algoritmo mas general, descripción de una sucesión ordenada de instrucciones no ambiguas que
permiten resolver un problema en un número finito de pasos.
Programa conjunto de datos y sentencias que indican a la computadora cuales son las tareas que
tiene que realizar para lograr un fin específico.
3
CIENCIAS DE LA COMPUTACIÓN
Esta representación gráfica se da cuando varios símbolos (que indican diferentes procesos en la
computadora), se relacionan entre si mediante líneas que indican el orden en que se deben
ejecutar los procesos.
Los símbolos utilizados han sido normalizados por el instituto norteamericano de normalización
(ANSI).
SÍMBOLO DESCRIPCIÓN
4
CIENCIAS DE LA COMPUTACIÓN
2.4.2 Pseudocódigo
Mezcla de lenguaje de programación y español (o ingles o cualquier otro idioma) que se emplea,
dentro de la programación estructurada, para realizar el diseño de un programa. En esencial, el
pseudocodigo se puede definir como un lenguaje de especificaciones de algoritmos.
Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un
problema determinado. El pseudocódigo utiliza palabras que indican el proceso a realizar.
5
CIENCIAS DE LA COMPUTACIÓN
Inicio
Accion1
Accion2
...
Fin
Inicio
Leer
Nombre, Hrs, Precio
Calcular
Salario = Hrs * Precio
Calcular
Imp = Salario* 0.15
Calcular
Neto = Salario + Imp
Escribir
Nombre, Imp, SNeto
Fin
6
CIENCIAS DE LA COMPUTACIÓN
Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa.
Es importante que se conozca lo que se desea que realice la computadora; mientras esto no se
conozca del todo no tiene mucho caso continuar con la siguiente etapa.
2.10.4. Codificación.
La depuración o prueba resulta una tarea tan creativa como el mismo desarrollo de la solución,
por ello se debe considerar con el mismo interés y entusiasmo.
Resulta conveniente observar los siguientes principios al realizar una depuración, ya que de este
trabajo depende el éxito de nuestra solución.
2.10.6. Documentación.
Manual del Usuario: Describe paso a paso la manera cómo funciona el programa, con el
fin de que el usuario obtenga el resultado deseado.
2.10.7. Mantenimiento.
Se lleva a cabo después de terminado el programa, cuando se detecta que es necesario hacer
algún cambio, ajuste o complementación al programa para que siga trabajando de manera
correcta. Para poder realizar este trabajo se requiere que el programa este correctamente
documentado.