ROSCO
En grupos de 3 alumnos/as. Observa las letras, identifica y rellena las palabras que faltan.
En grupos de 3 alumnos/as. Observa las letras, identifica y rellena las palabras que faltan.
Un algoritmo es un conjunto ordenado de pasos a seguir (instrucciones concretas) que llevan a resolver un determinado problema. Ha de cumplir con las siguientes condiciones:
Ser correcto (Resuelve el problema).
Ser finito (Conduce a la solución en un tiempo dado).
Ser flexible (No es exclusivo para un tipo de problema sino que sirve como método general para distintos datos).
Ser claro (comprensible por otras personas).
Ser eficiente (ahorro de tiempo y recursos).
Ser portable (independiente de la máquina o del lenguaje utilizado).
El algoritmo surge de la necesidad de resolver un problema dado. Para ello, siempre será posible crear múltiples soluciones. El algoritmo que seleccionemos será aquel que obtenga los resultados esperados en el menor tiempo posible y con el menor coste. Para ello debemos reflexionar sobre:
¿Qué información o resultados se quieren obtener?
¿A través de qué procesos se podrán obtener los resultados?
¿Se requiere algún proceso intermedio?
¿Qué tipo de datos serán necesarios?
¿Qué variables?
¿Qué condiciones exige el problema para su solución?
Uno de los métodos más apropiados para desarrollar un algoritmo es el que se detalla a continuación:
Aunque no seamos conscientes, en la vida diaria estamos utilizando a diario algoritmos, muchos son muy sencillos, pero no dejan de ser algoritmos y que podemos describir utilizando el lenguaje natural, es decir, con seudocódigo. Veamos un ejemplo muy básico:
ALGORITMO ponerse los zapatos.
INICIO
Coger los zapatos.
SI los cordones de los zapatos están anudados, ENTONCES desatar los zapatos.
Sentarse en una silla.
Ponerse el zapato derecho en el pie derecho.
Atarse los cordones del zapato derecho.
Ponerse el zapato izquierdo en el pie izquierdo.
Atarse los cordones del zapato izquierdo.
FIN
A continuación se muestran una serie de símbolos útiles para llevar a cabo este tipo de representaciones.
En Internet existen numerosas herramientas que pueden ayudarte a crear diagramas de flujo. Aquí te proponemos:
draw.io: Permite guardar los diagramas en el disco duro de tu ordenador, Gdrive, OneDrive o Dropbox.. Es gratuito y no necesitas registrarte
Si comienzas a programar directamente, salvo que lo que vas a hacer sea algo realmente muy sencillo, lo más probable es que el algoritmo que crees no sea ni claro ni eficiente. Aprender a programar es mucho más que escribir código: implica aprender a pensar. De ahí la importancia de introducir la programación y el pensamiento computacional en nuestras aulas: es un camino que permite fomentar el pensamiento crítico y la autonomía en nuestro alumnado.
Que un programa funcione no significa que esté bien hecho. Seguramente todos podríamos construir una casa poniendo 10 columnas en medio del salón para que se sostenga, pero no sería eficiente ni estético.
Veamos un ejemplo muy sencillo. Supongamos que queremos hacer un programa que pida un número al usuario o usuaria y muestre la tabla de multiplicar de ese número. Si no nos paramos a pensar, una solución a la que podríamos haber llegado con Scratch y que funcionaría sería la siguiente:
Pero este no es un buen algoritmo, ya que estamos repitiendo la misma instrucción 10 veces (hemos metido 10 columnas en nuestro salón). Si antes de ponernos a programar, nos sentásemos a pensar un poco en un algoritmo que calcule la tabla de multiplicar, seguramente llegaríamos a una solución como ésta que seguramente todos y todas somos capaces de entender:
Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0