Professional Documents
Culture Documents
Un programador es una persona que resuelve problemas, y para llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y sistemtico
Problema
Diseo Algoritmo
Anlisis
Programa
Algoritmo
Etimologa: Proviene del nombre del matemtico persa Mohammed Al-khowanzmi, cuyo apellido traducido al latn es Algorismus
Es un mtodo para la resolucin de problemas. Es un conjunto de pasos a seguir para la solucin a un problema. Es una serie finita de instrucciones para realizar una tarea. Formalmente: Es un conjunto de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver
se debe resultado
obtener
el
mismo
Algoritmo
Ejemplo tradicional de un algoritmo: Cambiar la rueda pinchada de un coche
Algoritmo
1. Buscar herramientas, rueda de repuesto y tringulo de sealizacin 2. Ubicar el tringulo en el lugar adecuado
3. Ir al lugar de la rueda averiada 4. Sacar las tuercas 5. Colocar el gato 6. Levantar el coche
Algoritmo
7. Sacar la rueda
8. Colocar la rueda de Repuesto
9. Colocar las tuercas 10. Apretar las tuercas 11. Guardar las herramientas FIN
Algoritmo
Fases de Desarrollo de un Algoritmo
Fases
Anlisis
Diseo
Codificacin
Compilacin Interpretacin
Pruebas
Fase de Anlisis: El primer paso a seguir para encontrar la solucin a un problema computable es el anlisis del problema. En el anlisis del problema se requiere del mximo de creatividad e imaginacin. Debido a que se busca una solucin se debe examinar cuidadosamente el problema a fin de identificar que tipo de informacin es necesaria producir. En seguida se deben identificar aquellos elementos de informacin ofrecidos por el problema y que resulten tiles para obtener la solucin al problema. Finalmente, un procedimiento para producir los resultados deseados a partir de los datos, es decir, el algoritmo.
Diseo: consiste en la realizacin del algoritmo que resuelve el problema de acuerdo a la especificacin dada en la fase anterior. El algoritmo se representa mediante pseudocdigo.
Algoritmo PRUEBA Inicio Variables A,B,C: entero Leer(A,B) CA+B Escribir (C) Documentos de Especificacin Fin
CA+B
Escribir (C) Fin Programa escrito en un Lenguaje de Programacin
Programa Ejecutable
Programa fuente
Algoritmo
Prueba: consiste en determinar si el programa funciona correctamente y realiza las operaciones que esperamos de l.
Programa Ejecutable
Aplicacin
Lenguajes de programacin
Lenguaje: conjunto de reglas y convenciones que se utilizan para comunicar informacin. Lenguaje de Programacin: es un lenguaje que permite la traduccin de un algoritmo para que sea entendible por el computador. Son los lenguajes utilizados para escribir programas de ordenadores. Tipos de Lenguaje de Programacin: Lenguaje de Mquina Lenguaje de Bajo Nivel (Ensamblador) Lenguaje de Alto Nivel
Lenguaje de mquina
Son aquellos que estn escritos en lenguaje directamente inteligibles por la mquina, ya que sus instrucciones son cadenas binarias (0s ,1s) que especifican una operacin. Las instrucciones en lenguaje mquina dependen del Hardware de la computadora, difiere de una PC a otra. La ventaja de los lenguajes mquina es que ofrecen mayor velocidad de ejecucin. Existen algunas desventajas: dificultad y lentitud en la codificacin, poca fiabilidad, los programas no son portables.
Un programa escrito en lenguaje ensamblador requiere una fase de traduccin. Entre las desventajas tenemos: que este lenguaje depende de la mquina y demanda una mayor exigencia para los programadores, ya que deben conocer tanto las tcnicas de programacin as como el interior de la mquina
DATA SEGMENT ; Segmento de datos SALUDO DB "Hola mundo!!",13,10,"$" ; Cadena DATA ENDS INICIO: MOV AX,DATA MOV DS,AX MOV DX,OFFSET SALUDO MOV AH,09H INT 21H MOV AH,4CH INT 21H CODE ENDS END INICIO ; Punto de entrada al programa ; Pone direccin en AX ; Pone la direccin en los registros ; Obtiene direccin del mensaje ; Funcin: Visualizar cadena ; Servicio: Funciones alto nivel DOS ; Funcin: Terminar
Aumento de la ocupacin de la memoria Las estructuras de los programas se basan en reglas sintcticas Ejemplos: C, C++, Pascal, Ada, Prolog, Smalltalk, Visual Basic, Delphi, Java,...