Algoritmos
Por: Gerardo Atencio
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.
Evaluación de los operadores lógicos
Que son los algoritmos, y como se representan

Que son los algoritmos, y como se representan

  • 1.
  • 2.
    Algoritmos Es un conjuntode 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.
  • 3.
  • 4.
    Técnicas para representaralgoritmos 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.
  • 6.
    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.
  • 7.
    Diagrama de flujo Sonrepresentaciones 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
  • 8.
    Simbología Para diseñarlos, seutilizan 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.
  • 9.
    Reglas para laconstrucción de diagramas de flujo
  • 13.
    Estructura básica Los algoritmos puedentener 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.
  • 14.
    Estructura secuencial Sigue el ordende las instrucciones planteadas en el algoritmo, por lo que existe un solo camino para obtener el resultado.
  • 15.
    Estructura alternativa El algoritmo cuentacon dos alternativas, de las cuales se selecciona una, dependiendo del resultado que se obtenga.
  • 16.
    Estructura repetitiva Cuando elalgoritmo 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.
  • 17.
    Elementos que componenlos 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.
  • 18.
  • 19.
    Tipos de datos Tipoentero. 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).
  • 20.
    Asignaciones Cuando una expresiónes 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
  • 21.
    Operadores, constantes y variables Son elementosque relacionan de forma diferente, los valores de una o más variables; y/o constantes. Es decir, los operadores nos permiten manipular valores.
  • 22.
    Prioridad de losOperadores 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)
  • 23.
    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.
  • 24.
    Linealizar operaciones Las computadoras nocomprender 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.
  • 25.
    Evaluación de losoperadores lógicos