Habilidades de programación: Control de flujo

El ordenador no es una máquina inteligente que ayuda a gente estúpida, de hecho, es una estúpida máquina que funciona sólo en manos de gente inteligente. Umberto Eco

Todo programa o proyecto de Scratch sigue un flujo de ejecución.

¿Qué es un flujo de ejecución?

Si te lo has preguntado al leerlo, el flujo de ejecución de tu programa es el orden en el que tus personajes realizan las distintas acciones, por ejemplo, moverse en una dirección primero, decir hola después y para acabar cambiando de disfraz.

Y es muy importante que nosotros controlemos el flujo del programa para saber perfectamente qué esta haciendo en cada momento y así nuestros personajes no empiecen a comportarse de forma “rara” debido a que realmente no estamos programando bien.

¿Cómo puedo controlar el flujo de mi programa en Scratch?

  • Nivel básico: El flujo de ejecución más sencillo será aquel en el que primero se realizará una acción (en lenguaje de programación, instrucción), más tarde se ejecutará otra instrucción y después otra… así hasta llegar al final de nuestro programa. A continuación tenemos un ejemplo:

Flow1

Podemos ver que cuando el usuario presione sobre la bandera verde se ejecutarán un bloque detrás de otro y así todos los bloques que se han incluido en el programa. Comenzará por el primero y dirá “Soy un gato que baila” durante 2 segundos, luego ejecutará “mover 10 pasos”, a continuación “girar 15 grados a la derecha”, y así hasta llegar al último bloque del programa.

  • Nivel medio: Algo más avanzado es utilizar lo que en programación se llaman estructuras de control, que en Scratch son los bloques de control de color ámbar. Si los observas uno a uno, todos ellos hacen que el flujo de tu programa cambie de algún modo.

Algunos de estos bloques de control nos ayudan si queremos que otros bloques se repitan varias veces. Intenta adivinar en los siguientes ejemplos, cuál se repetirá 3 veces y cuál para siempre.

Flow3Flow2

¡EXACTO! El programa de la izquierda estará ejecutando dos bloques por siempre, mientras que el bloque de la derecha ejecutará varias instrucciones 3 veces y entre algunos bloques esperará 0.5 segundos. Trata de buscar código que se repite en tu programa y utilizar este tipo de bloques.

  • Nivel alto: Si tu programa es más complicado, te encontrarás con el problema de no saber exactamente qué número de veces se deben repetir algunos bloques, sino que querrás que se repitan hasta que ocurra algo. Aquí te mostramos un ejemplo que puede resultarte de ayuda.

Flow4

Con esto conseguimos que el personaje diga “No me pillas…” hasta que toque al personaje llamado Enemigo, entonces dejará de repetir y dirá “Me pillaste!”.

Estos bloques pueden ser los más difíciles de entender, así que trata de avanzar poco a poco y con paciencia. Pero realmente aquí se encuentra gran parte de la lógica de la programación, entonces es muy importante que aprendas a utilizarlos. Y ya sabes, si tienes alguna duda o problema, no dudes en dejar un comentario y trataremos de ayudarte.

El equipo de Dr.Scratch

Anuncios