Representación de un algoritmo

Una vez que se ha elegido la mejor alternativa para solucionar el problema o reto para el que se crea el algoritmo es el momento de representarlo siguiendo alguno de estos métodos:

  • Lenguaje natural (español, inglés, etc.)
  • Diagramas de flujo
  • Pseudocódigo

Diagramas de Flujo

A continuación se muestran una serie de símbolos útiles para llevar a cabo este tipo de representaciones.

Fuente: Slideshare de Paco González Caballero

En Internet existen numerosas herramientas que pueden ayudarte a crear diagramas de flujo. Aquí te proponemos dos gratuitas:

  • draw.io: Permite guardar los diagramas en el disco duro de tu ordenador, Gdrive, OneDrive o Dropbox.
  • Diagramly: Posibilita crear diagramas de flujo o mapas mentales.

En este documento (ver) encontrarás una serie de reglas y ejemplos para crear algoritmos y diagramas de flujo.

Pseudocódigo

El Pseudocódigo es sin duda de las representaciones más utilizadas. Es una forma de expresar el algoritmo utilizando el lenguaje natural, comprensible para cualquier persona, pero añadiendo ciertas instrucciones típicas de los lenguajes de programación.


No existe una sintaxis estándar para el pseudocódigo, pero como hemos comentado, en el pseudocódigo se reflejan las instrucciones típicas de los lenguajes de programación, como las instrucciones condicionales:

SI condición ENTONCES
    instrucciones/pasos a realizar si se cumple la condición
SI NO
    instrucciones/pasos a realizar si NO se cumple la condición
FIN SI

 

Elaboración propia utilizando Scratch

Y las instrucciones repetitivas:

REPETIR n veces
    instrucciones/pasos a realizar
FIN REPETIR

Elaboración propia utilizando Scratch

REPETIR HASTA condición de salida
    instrucciones/pasos a realizar hasta que se cumpla la condición de salida del bucle
FIN REPETIR

Elaboración propia utilizando Scratch

En definitiva, el pseudocódigo se trata de un falso lenguaje, ya que apela a las normas de estructura de un lenguaje de programación aunque está pensado para que pueda ser leído por un ser humano y no interpretado por una máquina.

El pseudocódigo, en este sentido, está considerado como una descripción de un algoritmo que resulta independiente de otros lenguajes de programación. Para que una persona pueda leer e interpretar el código en cuestión, se excluyen diversos datos que no son clave para su entendimiento. Veamos un par de ejemplos orientados a crear algoritmos matemáticos:

Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo.

Programa: área

Entorno: BASE, ALTURA, AREA son números enteros

Algoritmo:

escribir "Introduzca la base y la altura"

leer BASE, ALTURA

calcular AREA = BASE * ALTURA

escribir "El área del rectángulo es "AREA"

Finprograma

Ejemplo: Realizar el pseudocódigo que permita al usuario introducir por teclado dos notas, calculando la suma y el producto de las notas.

Programa: Suma Producto

Entorno: NOTA1, NOTA2, SUMA, PRODUCTO son números enteros

Algoritmo:

escribir "Introduzca las notas"

leer NOTA1, NOTA2

calcular SUMA = NOTA1 + NOTA2

calcular PRODUCTO = NOTA1 * NOTA2

escribir "La suma de las dos notas es: "SUMA"

escribir "El producto de las dos notas es: "PRODUCTO".

Finprograma

Ningún ordenador podría interpretar estas instrucciones. Para crear un programa a partir del algoritmo, una vez refinado el pseudocódigo, deberíamos reescribirlo en un leguaje de programación: C, C++, Java, Scratch...