Algoritmos

Page 1

ALGORITMOS

Por: Santiago José González Daza Oscar E. Córdoba Tamayo 10-B


¿Qué es un Algoritmo? • Un algoritmo tiene diferentes definiciones dependiendo de la ciencia en la cual se enfoque, en general es una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas. Para en lo que comprende sistemas, un algoritmo es una lista que, dado un estado inicial y una entrada, propone pasos sucesivos para arribar a un estado final obteniendo una solución.


Diferentes tipos de algoritmos Los algoritmos se pueden clasificar en 4 tipos: • Algoritmo computacional: Es un algoritmo que puede ser ejecutado en una computadora. Ejemplo: fórmula aplicada para un cálculo de la raíz cuadrada de un valor . • Algoritmo no computacional: Es un algoritmo que no requiere de una computadora para ser ejecutado. Ejemplo: instalación de un equipo de sonido. • Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Ejemplos: las instrucciones para desarrollar una actividad física. • Algoritmo cuantitativo: Un algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran cálculos numéricos. Ejemplo: solución de una ecuación de segundo grado.


De acuerdo a su función, se pueden encontrar: • Algoritmos de búsqueda: Un algoritmo de búsqueda es aquel que está diseñado para localizar un elemento concreto dentro de una estructura de datos. • Algoritmo de ordenamiento: Refiere a los algoritmos donde todos los elementos que se ingresan llevan un orden, donde se le asigna un orden léxico y/o numérico. • Algoritmo de encaminamiento: Refiere a los algoritmos que siguen una serie de pasos que se mantienen encadenados para llegar a transmitir algo. Estos algoritmos se dividen en estáticos y adaptivos. Los estáticos funcionan de manera mecánica sin cambio alguno. Los adaptivos presenta determinada capacidad de aprendizaje ante ciertas circunstancia.


De acuerdo a la estrategia : • Algoritmos probabilísticos: No son exactos, solo dan aproximaciones ante determinados problemas, a su vez las soluciones que obtienen pueden tanto ser correctas como incorrectas. De estos hay varios tipos como son: A. numérico : Dan una respuesta próxima al problema. A. de las Vegas: Ofrecen una respuesta correcta, y si existe algún fallo en los cálculos lo informa. A. de Montecarlo : Refieren a los algoritmos que pueden dar respuestas correctas o con una probabilidad muy baja. • Algoritmo heurístico: Abandona uno o ambos objetivos, normalmente encuentran buenas soluciones, aunque no hay pruebas de que la solución no pueda ser arbitrariamente errónea en algunos casos. • Algoritmo determinista: Es completamente predictivo si se conocen sus entradas. Dicho de otra forma, si se conocen las entradas del algoritmo siempre producirá la misma salida. • Algoritmo no determinista: Con una misma entrada ofrece muchos posibles


Características: • Debe ser Preciso: Porque cada uno de sus pasos debe indicar de manera precisa e inequívoca que se debe hacer. • Debe ser Finito: Porque un algoritmo debe tener un número limitado de pasos. • Debe ser Definido: Porque debe producir los mismos resultados para las mismas condiciones de entrada. • Puede tener cero o más elementos de entrada. • Debe producir un resultado: Los datos de salida serán los resultados de efectuar las instrucciones.


Lenguajes Algorítmicos Serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso. GRÁFICOS

Es la representación gráfica de las operaciones que realiza un algoritmo un ejemplo es el diagrama de flujo.

NO GRÁFICOS

Representa en forma descriptiva las operaciones que debe realizar un algoritmo como por el ejemplo el pseudocódigo.


Tipos • Diagrama de flujo Se basan en la utilización de diversos símbolos para representar operaciones especificas. • Diagramas estructurados (Nassi-Schneiderman) El diagrama estructurado N-S también conocido como diagrama de chappin es similar a un diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. • Pseudocódigo Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un problema determinado.


Metodología para la solución de problemas por medio de una computadora La solución de un problema por computadora, requiere de siete pasos, dispuestos de tal forma que cada uno es dependiente de los anteriores: • 1.-Definición del problema Es el enunciado del problema, debe ser claro y completo. Se debe conocer y delimitar el problema, saber qué es lo que se desea realice la computadora. 2.-Análisis de la solución Consiste en establecer una serie de preguntas acerca de lo que establece el problema, para poder determinar si se cuenta con los elementos suficientes para llevar a cabo la solución del mismo, algunas preguntas son: • ¿Con qué cuento? Cuáles son los datos con los que se va a iniciar el proceso, qué tenemos que proporcionarle a la computadora y si los datos con los que cuento son suficientes para dar solución al problema. • ¿Qué hago con esos datos? Una vez que tenemos todos los datos que necesitamos, debemos determinar qué hacer con ellos, es decir que fórmula, cálculos, que proceso o transformación deben seguir los datos para convertirse en resultados. • ¿Qué se espera obtener? Que información deseamos obtener con el proceso de datos y de qué forma presentarla; en caso de la información obtenida no sea la deseada replantear nuevamente un análisis en los puntos anteriores.


M.P.S.P.E.C • 3.-Diseño de la solución Una vez definido y analizado el problema, se procede a la creación del algoritmo (Diagrama de flujo ó pseudocódigo), en el cual se da la serie de pasos ordenados que nos proporcione un método explícito para la solución del problema. 4.- Codificación Consiste en escribir la solución del problema (de acuerdo al pseudocódigo); en una serie de instrucciones detalladas en un código reconocible por la computadora; es decir en un lenguaje de programación.

5.- Prueba y Depuración Identificar los errores que se presenten durante la ejecución del programa; es conveniente que se tomen en cuenta los siguientes puntos: 1. - Tratar de iniciar la prueba con una mentalidad saboteadora, casi disfrutando la tarea de encontrar un error. 2. – Verificar todos los datos. 3. - Considerar todas las situaciones posibles, normales y aún las anormales. La Depuración consiste en eliminar los errores que se hayan detectado durante la prueba, para dar paso a una solución adecuada y sin errores.


M.P.S.P.E.C • 6.- Documentación Es la guía o comunicación escrita que sirve como ayuda para usar un programa, o facilitar futuras modificaciones. Ésta debe presentarse en tres formas: EXTERNA, INTERNA y MANUAL DEL USUARIO. Documentación Interna Consiste en los comentarios o mensajes que se agregan al código del programa, que explican las funciones que realizan ciertos procesos, cálculos o fórmulas para el entendimiento del mismo. Documentación Externa También conocida como Manual Técnico, está integrada por los siguientes elementos: Descripción del Problema, Nombre del Autor, Diagrama del Flujo y/o Pseudocódigo, Lista de variables y constantes, y Codificación del Programa, esto con la finalidad de permitir su posterior adecuación a los cambios. • 7.- Mantenimiento Se lleva a cabo después de determinado el programa, cuando se ha estado trabajando un tiempo, y se detecta que es necesario hacer un cambio, ajuste y/o complementación al programa para que siga trabajando de manera correcta.


PROGRAMA INFORMร TICO Un programa informรกtico es una serie de comandos ejecutados por el equipo. Pero como el equipo sรณlo es capaz de procesar elementos binarios, es decir, una serie de 0s y 1s, necesitamos un lenguaje de programaciรณn para escribir de manera legible, es decir, con comandos que el ser humano pueda comprender, los comandos que el equipo deberรก ejecutar.


PROBLEMA INFORMร TICO En informรกtica un problema puede ser un fallo de software o hardware, o un error de programaciรณn.


CÓDIGO DE MÁQUINA Es el único texto que entiende directamente la computadora, utiliza el alfabeto binario que consta de los dos únicos símbolos 0 y 1, denominados bits (abreviatura inglesa de dígitos binarios).


PROGRAMA FUENTE Se trata de las instrucciones que un programa informático transmite a una computadora para que pueda ejecutarse. Dichas instrucciones son líneas de texto escritas en un lenguaje de programación.


PROGRAMA EJECUTABLE (EJECUTABLES) Los ejecutables son sistemas binarios cuyo contenido lo interpreta el ordenador como programa. Tiene la capacidad de poder ser ejecutados de forma independiente.


COMPILACIÓN Proceso de traducción de un código fuente (lenguaje de programación de alto nivel) a lenguaje máquina (código objeto) para que pueda ser ejecutado por la computadora. Las computadoras sólo entienden el lenguaje máquina. La herramienta encargada de la traducción se llama compilador.


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.