Ir al contenido principal

Conceptos Básicos de Algoritmos y Diagramas de Flujo

Algoritmo y diagrama de flujo son dos tipos de herramientas usadas para explicar el proceso de un programa.

Algoritmo y diagrama de flujo son dos tipos de herramientas usadas para crear nuevos programas, especialmente en programación de computadores. Un algoritmo es un análisis paso a paso del proceso, mientras un diagrama de flujo explica los pasos de un programa de forma gráfica.

Concepto de algoritmo 

Significa «número», es un conjunto de instrucciones o reglas definidas y no-ambiguas, ordenadas y finitas que permite, típicamente, solucionar un problema, realizar un cómputo, procesar datos y llevar a cabo otras tareas o actividades. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución.


las característica que debe cumplir todo algoritmo son:

*Preciso. definirse de manera rigurosa, sin dar lugar ah ambigüedades

*Definido. si se sigue un algoritmo dos veces, se obtendrá el mismo resultado  

*Finito. debe terminar en algún momento 

*Puede tener cero o mas elemento de entrada

*Debe producir un resultado. los datos de salida serán los resultados de efectuar instrucciones.

Tipos de Algoritmos

Generalmente podemos dividir los algoritmos en 6 tipos fundamentales basados en su función.

1. Algoritmo Recursivo

Se refiere a la forma de resolver problemas dividiéndolos repetidamente en problemas más pequeños. El ejemplo clásico de usar un algoritmo recursivo para resolver problemas es la Torre de Hanói.

2. Algoritmo Divide y Vencerás

Tradicionalmente, El algoritmo divide y vencerás consiste en dos partes: 1. dividiendo un problema en sub problemas independientes más pequeños del mismo tipo; 2. encontrar la solución final del problema original después de resolver estos pequeños problemas por separado.

3. Algoritmo de Programación Dinámica

El algoritmo de programación dinámica es usado generalmente para la optimización de problemas. En este tipo de algoritmo, los resultados anteriores son recolectados para su uso en el futuro. Similar al algoritmo de divide y vencerás, un algoritmo de programación dinámica simplifica un problema complejo al dividirlo en problemas más simple. 

4. Algoritmo Voraz

Este es otra forma de resolver problemas de optimización del algoritmo voraz. Se refiere a encontrar siempre la mejor solución en cada paso, en lugar de considerar la optimización general. Es decir, lo que hace es optimizar solo localmente.

5. Algoritmo de Fuerza Bruta

El algoritmo de fuerza bruta es una solución sencilla al problema, normalmente basado en la descripción del problema y en la definición del concepto involucrado. Puedes usar la expresión "solo hazlo" para describir la estrategia de la fuerza bruta.

6. Algoritmo Vuelta Atrás

Basado primero en la profundidad de una búsqueda recursiva, el algoritmo de vuelta atrás se enfoca en encontrar la solución al problema durante el proceso de búsqueda de enumeración. Cuando no puede satisfacer la condición, "Vuelve atrás" e intenta otro camino. 

Tipos de Algoritmos

Cualitativos: Son aquellos en los cuales se describen los pasos utilizando palabras.

Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.

 Concepto de Variable

Una variable es un símbolo que representa un elemento no especificado de un conjunto dado. Dicho conjunto es llamado conjunto universal de la variable, universo o dominio de la variable, y cada elemento del conjunto es un valor de la variable.

En programación, una variable es un espacio de memoria reservado para almacenar un valor que corresponde a un tipo de dato soportado por el lenguaje de programación.

Concepto de Constante

En general, una constante es un valor de tipo permanente, que no puede modificarse, al menos no dentro del contexto o situación para el cual está previsto. Suele relacionarse y usarse en combinación con las variables, que sí admiten modificación en sus valores.

Una constante es un dato cuyo valor no puede cambiar durante la ejecución del programa. Recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa. 

concepto de Diagrama de Flujo

Un diagrama de flujo es una forma de representar gráficamente los detalles algorítmicos de un proceso multifactorial. Se utiliza principalmente en programación, economía y procesos industriales, pasando también a partir de estas disciplinas a formar parte fundamental de otras, como la psicología cognitiva. Estos diagramas utilizan una serie de símbolos con significados especiales y son la representación gráfica de los pasos de un proceso. 

En los diagramas de flujo se presuponen los siguientes aspectos:

Existe siempre un camino que permite llegar a una solución (finalización del algoritmo).

Existe un único inicio del proceso.
Existe un único punto de fin para el proceso de flujo (salvo del rombo que indica una comparación con dos caminos posibles).

Hay cuatro tipos de diagrama de flujo en base al modo de su representación:

  • Horizontal. Va de derecha a izquierda, según el orden de la lectura
  • Vertical. Va de arriba hacia abajo, como una lista ordenada.
  • Panorámico. Permiten ver el proceso entero en una sola hoja, usando el modelo vertical y el horizontal.
  • Arquitectónico. Representa un itinerario de trabajo o un área de trabajo.

Simbología de un diagrama de flujo

Los principales símbolos convencionales que se emplean en los diagramas de flujo son los siguientes:

Características

Identificar las ideas principales a ser incluidas en el diagrama de flujo

Definir qué se espera obtener del diagrama de flujo.

Identificar quién lo empleará y cómo.

Establecer el nivel de detalle requerido.

Determinar los límites del proceso a describir.

Los pasos a seguir para construir el diagrama de flujo son :

Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama.

Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico.

Si el nivel de detalle definido incluye actividades menores, listarlas también.

Identificar y listar los puntos de decisión.

Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos.

Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido.




FUENTES:

https://concepto.de/diagrama-de-flujo/

https://www.edrawsoft.com/es/explain-algorithm-flowchart.html#:~:text=Un%20algoritmo%20es%20un%20an%C3%A1lisis%20paso%20a%20paso,un%20algoritmo%20es%20un%20proceso%20para%20resolver%20problemas.


Comentarios

  1. Muy buen blog, es de gran ayuda ya que contiene mucha información clara y precisa.

    ResponderEliminar
  2. Los conceptos de este tema son importantes, explican de manera detallada los contenidos, tiene un buen orden y se comprende.

    ResponderEliminar

Publicar un comentario