13 - Algoritmos y pseudocódigos

Lección 13 del curso Python Nivel Básico.

Introducción

Como vimos por ejemplo en la práctica anterior, en donde implementamos un programa para calcular el costo de una entrada a un parque de diversiones, un programa de computador es esencialmente una serie de acciones que se deben ejecutar en un orden determinado para lograr de esta forma el resultado deseado.

Implícitamente lo que hemos implementado ha sido precisamente un algoritmo, y como etapa previa hemos desarrollado algo que se conocen como los pseudo-códigos.

En esta lección hablaremos de estos dos elementos, que son la estructura básica de cualquier programa de computador.

Contenido exclusivo suscriptores

Suscríbete para tener acceso al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Algoritmos

Como vimos en la práctica anterior, al implementar el programa lo que hicimos fue ejecutar una serie de acciones en un orden específico: primero ingresamos los datos desde el teclado, luego usamos sentencias “if…elif” para verificar en qué rango de edad estaba el visitante y calcular la tarifa, así como definir el mensaje a imprimir; y por último imprimimos el mensaje.

Entonces podemos definir un algoritmo como un procedimiento para resolver un problema y que consta de:

  1. Una serie de acciones a ejecutar, y
  2. El orden en que dichas acciones se deben llevar a cabo

Y fijémonos que estos dos elementos resultan esenciales, es decir que no es suficiente con simplemente definir las acciones: el orden es importantísimo.

Podemos entender este concepto de acciones y orden de un algoritmo con la rutina de la mañana:

  1. Nos despertamos
  2. Nos damos una ducha
  3. Nos cambiamos de ropa
  4. Preparamos el desayuno
  5. Desayunamos
  6. Nos cepillamos los dientes y estamos listos para lo que venga en el día

En el algoritmo anterior podemos ver que no resulta posible cambiar el orden de algunas acciones. Es decir, no podemos primero cambiarnos de ropa (paso 3) y luego darnos una ducha (paso 2) para luego despertarnos!!! (paso 1). Las acciones se tienen que llevar en un orden específico para lograr el objetivo deseado.

Pseudo-códigos

Si volvemos al problema que resolvimos en la práctica 3 vimos que incluso antes de implementar nuestro código en Python escribimos, a manera de comentario, y con lenguaje humano escrito, los pasos que se debían llevar a cabo para resolver el problema.

Y si nos devolvemos a la práctica 2, en donde implementamos un programa para realizar operaciones sobre datos numéricos introducidos por el usuario, también escribimos con nuestras propias palabras la serie de acciones y el orden en el que las mismas se debían llevar a cabo para resolver el problema. Y todo esto antes de la implementación del código.

Implícitamente lo que tenemos en estos dos ejemplos es lo que se conoce como un pseudo-código. Éste es el primer paso para resolver el problema, y consiste simplemente en el texto escrito que describe paso a paso lo que nuestro programa debería hacer. Es el paso previo a la implementación como tal del código.

Siempre la recomendación es que antes de escribir el código escribamos el pseudo-código. Esto nos permitirá organizar nuestra mente y tener claridad de las diferentes acciones y el orden en que deberán ser ejecutadas para resolver el problema, lo cual nos facilitará la implementación del algoritmo.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Bien, teniendo claridad de lo que es un algoritmo y de la importancia del pseudo-código antes de implementar nuestro programa, estamos listos para continuar hablando de las secuencias de control en un programa.

En una lección anterior ya hablamos de la primera de ellas (las sentencias if), y en la siguiente lección hablaremos entonces de la segunda secuencia de control básica en la programación: la sentencia while.

Ver todas las lecciones de este curso