Algoritmos Es un conjunto de instrucciones o serie de pasos ordenados, definidos y finitos, que conducen a la solución de un problema. El conjunto de todas las operaciones a realizar; y el orden en que deben efectuarse, se le denomina algoritmo.
Características de los Algoritmos
Técnicas para representar algoritmos Los algoritmos, pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. El usar pseudocódigo y diagramas de flujo, evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas, para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.
Seudocódigo En el pseudocódigo (falso lenguaje, el prefijo pseudo significa falso), se escriben las instrucciones del algoritmo, en lenguaje natural, tal y como lo expresamos de manera cotidiana; éste procedimiento, facilita su escritura.
Diagrama de flujo Son representaciones gráficas, de los pasos necesarios que conllevan a la solución algorítmica de un problema. Si No Tiene reservación? Pedir Nombre Fin Inicio Buscar nombre en el listado Hay mesa disponible ? Asignar mesa Si Mensaje: “Lo sentimos estamos llenos” No
Simbología Para diseñarlos, se utilizan determinados símbolos o figuras, que representan una acción dentro del procedimiento. Éstos símbolos, se han normalizado o estandarizado, para representar los pasos del algoritmo. Cada paso se representa a través del símbolo adecuado, que se van uniendo con flechas, denominadas líneas de flujo, que a su vez indican el orden en que los pasos deben ser ejecutados.
Reglas para la construcción de diagramas de flujo
Estructura básica Los algoritmos pueden tener diferentes opciones de resultado, dependiendo de los datos de entrada que se proporcionen, o del resultado de un determinado proceso. Para lograr que un algoritmo llegue a la solución, se pueden usar distintas estructuras. Las estructuras básicas de los algoritmos, son: secuencial, alternativa y repetitiva.
Estructura secuencial Sigue el orden de las instrucciones planteadas en el algoritmo, por lo que existe un solo camino para obtener el resultado.
Estructura alternativa El algoritmo cuenta con dos alternativas, de las cuales se selecciona una, dependiendo del resultado que se obtenga.
Estructura repetitiva Cuando el algoritmo requiere que un conjunto de operaciones o instrucciones se realicen, un número finito de veces. Las instrucciones se efectúan, mientras el resultado sea cierto, de lo contrario; termina con la rutina, sin volver a ejecutar el conjunto de instrucciones.
Elementos que componen los algoritmos Variables, constantes y expresiones Una variable, es un espacio en la memoria de la computadora, que permite almacenar temporalmente un dato, durante la ejecución de un proceso, su contenido puede cambiar durante la ejecución del programa. Las constantes, son similares; pero, al contrario de las variables, no cambian su valor. Para reconocerlas en la memoria de la computadora, es necesario darles un nombre con el cual podamos identificarlas dentro de un algoritmo.
Tipos de variables
Tipos de datos Tipo entero. son los valores que no tienen punto decimal, pueden ser positivos o negativos y el cero. Tipo real. estos caracteres almacenan números muy grandes que poseen parte entera y parte decimal. Tipo caracter . El tipo de dato carácter es un dígito individual, el cual se puede representar como numéricos (0 al 9), letras (a-z) y símbolos (!"$&/\). Booleanos. Este tipo de dato se emplea para valores lógicos, los podemos definir como datos comparativos dicha comparación devuelve resultados lógicos (Verdadero o Falso).
Asignaciones Cuando una expresión es evaluada, generalmente es necesario asociar el resultado a una variable, para poder referirse a él, en sentencias posteriores. La acción de guardar un valor; y ponerle un nombre, se representa como una sentencia simple, llamada asignación. Una asignación se representa así: variable = expresión variable expresión
Operadores, constantes y variables Son elementos que relacionan de forma diferente, los valores de una o más variables; y/o constantes. Es decir, los operadores nos permiten manipular valores.
Prioridad de los Operadores Todas las expresiones entre paréntesis, se evalúan primero. Las expresiones con paréntesis anidados, el paréntesis más interno, se evalúa primero. Dentro de una misma expresión, los operadores se evalúan en el siguiente orden. ( ) (paréntesis) ^ (potencia) *, /, mod (multiplicación, división, residuo) +, – (suma, resta)
Ejemplo x = a + b / c + d Primero se ejecutaría la división (b/c), posteriormente la suma del resultado de la división con a y el resultado se sumaría con d. Asignemos algunos valores: a=2, b=8, c=4 y d=3 x = 2 + 8/4 + 3 El valor que tomará x es 7.
Linealizar operaciones Las computadoras no comprender las operaciones de la forma en que lo haría una persona, por eso las operaciones matemáticas deben ser escritas en una sola línea.