Algoritmo Un algoritmo es un conjunto de pasos, instrucciones o acciones que se deben seguir y ejecutar de manera ordenada para alcanzar un fin
deseado, un algoritmo es una especie de receta, de instrucciones o rutinas para resolver un problema. Los algoritmos son modos de resolucin de problemas. Los algoritmos llevan a cabo un proceso y por lo tanto, son ejecutados por un procesador, que es cualquier ente que ejecute el algoritmo. Puede ser humano, o bien una computadora. Los algoritmos se pueden clasificar en dos tipos: Cualitativos.- son aquellos en los que NO intervienen clculos numricos. Cuantitativos.- son aquellos en los que SI intervienen clculos numricos. Caractersticas Un algoritmo, adems de ser una secuencia de acciones lgicas que hay que realizar para completar un proceso tambin requiere cumplir con cinco condiciones: 1. Finitud.- un algoritmo debe terminar en un numero finito de pasos 2. Definibilidad.- cada paso del algoritmo debe definirse de modo preciso; las acciones a realizar deben de estar especificadas rigurosamente y sin ambigedades para cada caso. 3. Entrada.- un algoritmo tiene cero o mas entradas. Esto es, las cantidades de los datos de inicio se generan en el mismo algoritmo o se conocen previamente. 4. Salida.- un algoritmo tiene una o mas salidas. Es decir, hay datos o cantidades al termino del algoritmo que tiene una relacin especifica con los datos o cantidades de entrada. 5. Efectividad.- el algoritmo debe ser efectivo. Esto significa que todas las operaciones deben ser suficientemente sencillas para poder, en principio, ser realizadas de modo exacto y en un tiempo finito por un procesador Las condiciones anteriores se deben cumplir en todo algoritmo matematico o computacional. Representacin Un algoritmo puede ser representado utilizando diversas tcnicas o mtodos.
PSEUDOCODIGO ALGORITMO DIAGRAMA DE FLUJO
pasos enumerados (receta) simbologia
Metodologa para resolver problemas Definicin del problema En general, y de una manera muy simple, podemos decir que un problema es algo que hay que resolver. Es una situacin o un estado inicial que debemos transformar en una situacin o estado final, mediante un proceso , que consiste en una accin o conjunto de acciones. El proceso para resolver el problema debe tomar en cuenta que existe un conjunto de valores de entrada, una serie de factores (condiciones y/o alternativas) que considerar; determinar qu valores de salida se esperan, y establecer un alcance o delimitacin si el planteamiento del estado inicial y final es muy amplio. Etapas en la solucin de problemas La solucin de un problema implica desarrollar al mximo nuestra imaginacin y creatividad para aplicar una metodologa que permita definirlo con claridad y obtener el resultado deseado. Podemos decir que la solucin de un problema consta de tres etapas: Identificacin del problema Anlisis del problema Implantacin o solucin mediante un algoritmo
PROBLEMA
IDENTIFICACIN DEL PROBLEMA
ANLISIS DEL PROBLEMA
ALGORITMO DE SOLUCIN
Identificacion del Problema
La identificacin del problema significa especificar cual es la situacin o estado inicial, y cual es la situacin final o estado final deseado. La metodologa para identificar un problema consiste en: Leer el enunciado del problema cuantas veces sea necesario para comprenderlo Plantear tantas preguntas como sea necesario para aclarar el problema Encontrar las respuestas de las preguntas planteadas Especificar cual es el estado inicial Especificar cual es el estado final deseado Delimitar el problema
Anlisis del Problema
La segunda etapa o fase en la solucin de un problema es analizarlo. Una vez que ha sido planteado el problema, el anlisis del mismo consiste en identificar claramente los valores de entrada, los valores esperados de salida, los factores a considerar y la delimitacin del mismo. Al analizar el problema se debe determinar lo siguiente:
El conjunto de valores iniciales o de entrada El conjunto de valores finales o de salida Los factores que influyen en el problema, tales como condiciones y/o alternativas de solucin La delimitacin de la solucin del problema Una vez que se haya especificado cada uno de los puntos anteriores, el paso siguiente consiste en la solucin del problema mediante el diseo de un algoritmo.
Algoritmo de Solucin
La tercera etapa en la solucin de un problema es la eleccin de una alternativa o el diseo de un algoritmo. Para disear el algoritmo se toman en cuenta los puntos desarrollados en el anlisis del problema. En forma muy general, un algoritmo consiste en tres etapas: Leer los datos de entrada Procesar los datos Escribir el resultado
ALGORITMO
LEER DATOS DE ENTRADA En esta etapa se proporcionan valores iniclaes PROCESAR DATOS Es la etapa en la que se indica la accin, operacin o instruccin a ejecutar. ESCRIBIR DATOS DE SALIDA Es la etapa en la que se obtienen los resultados o la solucion del problema.
Diagramas de flujo Un diagrama de flujo representa grficamente a un algoritmo. El diagrama de flujo representa de manera grafica los pasos o instrucciones a realizar para alcanzar la solucin del problema. Cada etapa de un algoritmo se representa con simbolos especiales que permiten identificarlas fcilmente al construir el diagrama de flujo. Simbologa
Pseudocdigo El pseudocdigo es un mtodo para representar de manera textual la solucin de un problemas mediante algoritmos; utiliza un lenguaje no formal para describir la secuencia de acciones que se deben ejecutar, donde las instrucciones se escriben casi de manera personal. En este tipo de lenguaje se tiene que definir que palabras clave utilizar, qu verbos emplear y es preciso definir variables (valores que puedan cambiar) para los datos de entrada, del proceso y de salida. Caractersticas
Emplear palabras normales de un idioma por ejemplo inicio, leer, escribir, imprimir, calcular, etc. No existe un vocabulario obligado, aunque por el uso frecuente y la comodidad se han establecidos estndares. Las instrucciones deben ser escritas con precisin, sin ambigedades como podra suceder con el mtodo del texto narrativo. Las instrucciones aunque escritas con precisin no requieren la rigurosidad de las empleadas en un lenguaje de programacin. Un algoritmo representado en pseudocdigo puede convertirse con facilidad en el cdigo de cualquier lenguaje de programacin.
Estructuras de control En la construccin de algoritmos y diagramas de flujo se requiere el uso de diversos tipos de datos, stos tiene un comportamiento variable o constante, adems deben ser manipulados de distintas maneras.
TIPOS DE DATOS
VARIABLES ESTRUCTURAS DE CONTROL CONSTANTES
ARITMTICOS OPERADORES LGICOS RELACIONALES
Tipos de datos
Los diferentes objetos de informacin con los que trabaja un algoritmo y, posteriormente, un programa de computadora, se denominan datos. Los datos que pueden existir durante el desarrollo de stos son: numricos, caracteres y lgicos.
ENTEROS
POSITIVOS O NEGARTIVOS Y NO TIENE PARTE DECIMAL
NUMRICOS LLEVAN PUNTO DECIMAL Y TAMBIEN PUEDEN SER POSITIVOS O NEGATIVOS
REALES
TIPOS DE DATOS
NMERO, LETRA O SMBOLO ENTRE APSTROFOS. CARACTERES SE EXPRESAN ENTRE COMILLAS Y CONSISTEN EN UNA SECUENCIA DE CARACTERES
CADENAS
LGICOS
LOS LGICOS SOLAMENTE PUEDEN TENER DOS VALORES
FALSO O VERDADERO
Variables
Una variable es un dato cuyo valor puede estar cambiando durante el desarrollo del algoritmo y en la ejecucin del programa. Una variable se identifica con nombre y tipo de dato. Constante Una constante es una literal cuyo valor se mantiene a lo largo del algoritmo y durante la ejecucin del programa. Operadores Los operadores son simbolos que relacionan los valores de una o mas variables y/o constantes. Su principal funcin es indicar una operacin a realizar. La combinacin de operadores, variables y constantes forman expresiones
OPERADORES
ARITMTICOS
LGICOS
RELACIONALES
PERMITEN LA REALIZACIN DE OPERACIONES MATEMATICAS
ES UNA EXPRESION CUYO RESULTADO ES FALSO O VERDADERO Y SON OPERACIONES QUE SE REALIZAN SOBRE UNA O MAS EXPRESIONES LGICAS Y EL RESULTADO SERA FALSO O VERDADERO
COMPARAN DOS VALORES O EXPRESIONES Y DAN COMO RESULTADO FALSO O VERDADERO
SUMA, RESTA, MULTIPLICACIN, DIVISIN, RESIDUO, POTENCIA
- VERDADERO SI AMBOS OPERANDOS SON VERDADEROS (Y). - VERDADERO SI CUALQUIER OPERANDO ES CIERTO (O). - NEGACION (NO).
ES MAYOR QUE
ES MENOR QUE ES IGUAL A ES MENOR O IGUAL QUE ES MAYOR O IGUAL QUE ES DIFERENTE DE
10