1. algoritmo

Embed Size (px)

DESCRIPTION

PROTOTIPO PARA REALIZAR ALGORITMOS

Text of 1. algoritmo

  • 1. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 1

2. Qu es algoritmo? Conjunto de instrucciones organizadas que permite la resolucin de un problema paso a paso. Es un conjunto de acciones o secuencia de operaciones que ejecutadas en un determinado orden resuelven el problema. Existen n algoritmos, hay que coger el ms efectivo. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 2 3. Caractersticas Precisin: Es la indicacin del orden en que deben ejecutarse cada uno de los pasos. Finitud: Es la consecucin del resultado deseado despus de un conjunto de pasos ejecutados. Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez. Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algn momento; o sea, debe tener un numero finito de pasos. La definicin de un algoritmo debe definir tres partes: Entrada, Proceso y Salida. En el algoritmo de receta de cocina citado anteriormente se tendr: Entrada: ingrediente y utensilios empleados. Proceso: elaboracin de la receta en la cocina. Salida: terminacin del plato (por ejemplo, cordero). Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 3 4. Pasos Anlisis preliminar o evaluacin del problema: Estudiar el problema en generar y ver que parte nos interesa. Definicin o anlisis del problema: Ver que es lo que entra y que es lo que sale, las posibles condiciones o restricciones. Diseo del algoritmo: Disear la solucin del problema. El programa: Codificacin del programa en un lenguaje de programacin. Ejecucin del programa y la prueba de escritorio: ver si el programa hace lo que queremos. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 4 5. Pseudocdigo? Considerado como un lenguaje falso, el pseudocdigo es un lenguaje intermedio entre nuestro lenguaje y el de programacin, debido a que quien lo utiliza se gua por una serie de normas pero sin llegar a usar una estructura tan rgida como la del lenguaje de programacin. El objetivo al que apunta es que quien lo pone en prctica se centre ms en la solucin del algoritmo o el diseo de un software que en el programa que utiliza para crearlo. Y esto es posible porque es ms fcil de manipular ya que no tiene que tener en mente el lenguaje en s y adems, ms fcil de codificar. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 5 6. Pseudocdigo? Por ejemplo, si alguien tiene que hacer un software con un fin determinado, utiliza un pseudocdigo propio en donde confluyen frases del lenguaje coloquial y algunas palabras de programacin, y una vez que se logra concretar el software, se puede pasar al escaln siguiente que es el de la transformacin al lenguaje de programacin formal que se vaya a utilizar. De esta manera, al ser un lenguaje intermedio, no tiene una composicin estandarizada por lo que no todos los programadores utilizan la misma sintaxis con exactitud. Pero a la vez, como es una herramienta que est un paso previo al lenguaje formal de programacin, es fcil de transformar al que ser ejecutado en la computadora. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 6 7. Tipos de lenguajes algortmicos Semiformales: Las reglas gramaticales y sintcticas se han reducido al mnimo. Formales: Las reglas gramaticales y sintcticas deben ser mucho mas precisas e inequvocas. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 7 Grficos: Es la representacin grfica de las operaciones que realiza un algoritmo. (diagrama de flujo). No Grficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocdigo). 8. Diagrama de flujo Representacin grafica del flujo de datos que resolver el problema algortmico. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 8 Pseudocdigo En este ejemplo la representacin es mas precisa y descriptiva para resolver el problema NICIO Edad: Entero ESCRIBA cual es tu edad? Lea Edad SI Edad >=18 entonces ESCRIBA Eres mayor de Edad FINSI FIN 9. Qu es un programa? Un programa es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo slo es capaz de procesar elementos binarios, es decir, una serie de 0s y 1s. Por lo tanto, necesitamos un lenguaje de programacin para escribir de manera legible, es decir, con comandos que el ser humano pueda comprender (por ser similares a su propio lenguaje) los comandos que el equipo deber ejecutar. Estos programas se traducen despus a un lenguaje mquina (en binario) a travs de un compilador. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 9 10. El mtodo de escritura de un programa est muy ligado al lenguaje de programacin elegido, ya que existen muchos tipos distintos. Adems, el compilador debe coincidir con el lenguaje elegido: cada lenguaje de programacin tiene su propio compilador (excepto los lenguajes interpretados). En trminos generales, el programa es un simple archivo de texto (escrito usando un procesador o editor de texto), llamado archivo fuente). El archivo fuente contiene lneas de programa llamadas cdigo fuente. Este archivo fuente, debe compilarse una vez completado. La compilacin se realiza en dos pasos: Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 10 11. El compilador transforma el cdigo fuente en cdigo objeto y lo guarda en un archivo objeto, es decir que traduce el archivo fuente a lenguaje mquina (algunos compiladores tambin crean un archivo en ensamblador, un lenguaje similar al lenguaje mquina ya que posee las funciones bsicas, pero puede ser ledo por los seres humanos. Luego, el compilador llama a un editor de vnculos (o ensamblador) que permite insertar los elementos adicionales (funciones y bibliotecas) a los que hace referencia el programa dentro del archivo final, pero que no se almacenan en el archivo fuente. A continuacin, se crea un archivo ejecutable que contiene todos los elementos requeridos por el programa para funcionar de manera independiente (en Microsoft Windows o MS-DOS este archivo tendr la extensin .exe). Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 11 12. Tipos de programas Fuente: Es el programa escrito por el programador a partir del algoritmo. Objeto: Es el programa obtenido por el ordenador atreves del programa fuente, despus de un proceso de compilacin. Ejecutables o binario: Es el programa obtenido por el ordenador a partir del programa objeto. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 12 A la persona que desarrolla un programa se le llama programador, y no tiene que ser, necesariamente, la misma que la que hace uso de dicho programa. A esta segunda persona se le denomina usuario. De hecho, la mayora de los usuarios no necesitan tener conocimientos avanzados de informtica para utilizar los programas. Por ejemplo, un usuario comn no necesita saber que casi todos los programas se pueden clasificar dentro de tres categoras principales: Software de aplicacin. Software del sistema. Software de red. 13. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 13 Software de aplicacin. El software de Aplicacin es aquel que hace que el computador coopere con el usuario en la realizacin de tareas tpicamente humanas, tales como gestionar una contabilidad o escribir un texto. Software del sistema consiste en programas informticos que sirven para controlar e interactuar con el sistema operativo. Suelen clasificarse en sistema operativo, controladores de dispositivos y programas utilitarios. Software de red. Es el programa que utilizas para manejar y administrar tu red . Un ejemplo clave es Windows Server o Linux Samba, ambos Sistemas Operativos proporcionan SERVICIOS a los dems Nodos de la red. 14. Lenguajes de programacin Es el lenguaje empleado por el programador para dar las instrucciones necesarios que el ordenador debe ejecutar y poder resolver un algoritmo determinado. Es un idioma artificial diseado para expresar computaciones que pueden ser llevadas a cabo por mquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento fsico y lgico de una mquina, para expresar algoritmos con precisin, o como modo de comunicacin humana. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 14 15. Lenguajes de programacin Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 15 Son ejemplos de lenguajes de programacin: php, prolog, ASP, ActionScript, ada, python, pascal, c, basic, JAVA, JavaScript, etc. 16. Tipos de lenguajes Lenguaje maquina: No necesita traduccin, todo se programa en 0 y 1. Los lenguajes de mquina estn escritos en cdigos (cdigo mquina) directamente inteligibles por la mquina (computadora), siendo sus instrucciones cadenas binarias (0 y 1). Lenguaje de mquina hace referencia al lenguaje especfico de una computadora, mientras que cdigo mquina hace referencia al modo en que se escriben los diferentes lenguajes de mquina. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 16 17. Tipos de lenguajes De bajo nivel o ensamblado: Son aquellos en las que las instrucciones son casi idnticas a las de un ordenador. La programacin en un lenguaje de bajo nivel tiene como ventajas una mayor adaptacin al equipo, adems de la posibilidad de obtener la mxima velocidad con el mnimo uso de memoria. Sin embargo tiene importantes inconvenientes, como la imposibilidad de escribir cdigo independiente de la mquina y la mayor dificultad en la programacin y en la comprensin de los programas. Lic. Luis Alfonso Rodrguez Especialista en Mantenimiento, Ensamble Y Reparacin de P.C 17 18. Tip