Segundo capítulo de nuestro especial Scratch de los viernes que, tras una primera entrada introductoria nos lleva a continuar con una segunda propuesta. Hoy dibujaremos polígonos regulares en Scratch, una labor perfecta para afianzar muchos conceptos de matemáticas.
No es el polígono más sencillo conceptualmente, pero sí uno de los que más rápidos se entienden. El cuadrado puede dibujarse muy fácilmente en Scratch utilizando la categoría de instrucciones Lápiz (color verde oscuro) y, más concretamente, dos de sus piezas clave: borrar y bajar lápiz.

Pero antes... ¿qué es un cuadrado?

Dice la R.A.E.:

cuadrado, da
Del lat. quadrātus.
1. adj. Dicho de una figura plana: Cerrada por cuatro líneas rectas iguales que forman otros tantos ángulos rectos.

Todos tenemos en la cabeza lo que es un cuadrado, su forma y sus características. Como dice la definición, dispone de cuatro líneas rectas y otros cuadro ángulos, todos ellos rectos.
Antes de programar vamos a hacer un símil en el mundo real. Ponte en pié en un espacio libre, donde no haya ningún obstáculo a tu alrededor suficiente como para dar unos pocos pasos. Imaginate ahora que el suelo es de tierra y que llevas un bastón para ir dejando el rastro a medida que te mueves.
Lo siguiente es pensar en cuáles deberían ser tus movimientos y tus giros para recorrer un cuadrado, para que el bastón que llevas dejase esa silueta plasmada en la tierra. ¿Aún no lo tienes? Continúa pensando. Una vez lo tengas, continúa leyendo.
Scratch-Cuadrados
Lo que nosotros queremos hacer es realizar un sencillo programa que 'dibuje' un cuadrado, y para ello es necesario seguir una serie de pasos. Dadas las instrucciones que proporciona, Scratch es muy semejante al mundo real.
Es probable que tus movimientos para alcanzar a dibujar ese cuadrado con nuestro 'bastón virtual' hayan sido los siguientes:

  • Baja el bastón para que toque en el suelo (y así poder dejar el rastro)
  • Avanzo un paso.
  • Giro 90 grados en un sentido
  • Avanzo otro paso
  • Giro 90 grados en el mismo sentido que antes.
  • Avanzo otro paso más (y van tres)
  • Vuelvo a girar 90 grados en el mismo sentido que antes.
  • Avanzo otro paso más, el cuarto y último.
  • De nuevo, girar 90 grados para volver a la posición y dirección inicial (opcional, pero recomendable)

(Nota: ésta es una solución al problema planteado "muévete como si tuvieses que recorrer un cuadrado", pero no es la única. También podemos hacer pasos laterales sin necesidad de girar, o girar en un sentido u otro independientemente de cuál sea éste, pero siempre con la premisa de que ha de ser el mismo. Por facilidad de comprensión y por las posibilidades que abre una vez finalizado este ejercicio, se plantea únicamente la solución de arriba.)
Si nuestros giros han sido los mismos (90 grados) y nuestros movimientos también (un paso de la misma longitud) habremos terminado el recorrido en el punto inicial, y nuestro bastón habrá dibujado ese cuadrado inicial.

La solución en Scratch

Hemos dicho que planteábamos el problema en el mundo real para luego plasmar un símil en programación, en este caso Scratch. En este caso el código es prácticamente idéntico a las instrucciones que realizamos en la realidad, con mínimos cambios:
Vs-2-Instrucciones-Cuadrado
Llegados a este punto siempre me gusta decir que los informáticos somos tremendamente vagos (hay una parte de ficción, pero también otra de realidad) y que nos gusta hacer el trabajo con la menor cantidad de piezas de Scratch posible. Tras alguna carcajada que otra, ésta es una de las mejores formas para enseñar el repetir, que permite precisamente lo que indica su nombre: repetir las veces que le indiquemos un cierto código.
Vs-2-Instrucciones-Cuadrado-Rep En este caso rápidamente puede verse que estamos repitiendo cuatro veces el mismo código: mover 100 pasos y girar 90 grados, un total de cuatro veces (una vez por cada lado del cuadrado). En este caso, la sustitución es tremendamente sencilla, tal y como muestra la imagen de este lateral.
Tanto en un caso (sin repetir) como en el otro (con repetir), el resultado será exactamente el mismo pero habremos ahorrado unas cuantas piezas. Además, 'repetir' (y en general cualquier sentencia de Control, la categoría de color amarillo) es una de las claves de cara a futuros desarrollos en el mundo de la programación.

Hasta el infinito, y más allá

Ya hemos dibujado un cuadrado, nuestro primer polígono regular. En el anterior capítulo ya dábamos algunas pistas que ahora se abren del todo: el código que hemos conseguido es la base para dibujar cualquier número de polígonos regulares, una de las propuestas con las que podemos ampliar este proyecto:

  • Dibujado el cuadrado, dibujados todos, así que prueba a dibujar un pentágono. Ten en cuenta además que los ángulos internos de un polígono regular han de sumar 360, y que en el caso del cuadrado... 360/4=90. ¿Sabes por dónde voy?
  • Estudia ahora el código del cuadrado y el del pentágono. Seguro que ya sabes hacer el triángulo, y el hexágono, y el heptágono, y... aunque eso sí, es posible que tengas que hacerlos un poquito más pequeños (es decir reducir la longitud del lado que en Scratch viene marcada por el número de pasos que mueves).
  • ... ¿y cuál es el polígono regular de infinitos lados? No podemos poner infinito en Scratch, pero sí un número grande. Te invito a que pruebes con 360 lados, a ver qué sale.
  • Más allá de polígonos regulares y con una programación ligeramente diferente: prueba a dibujar rectángulos, triángulos equiláteros o pentágonos que no sean regulares, pero sí simétricos.
    • Es el momento de probar el lápiz. ¿Sabías que, por ejemplo, con la categoría Lápiz puedes hacer cada lado de un color diferente? ¡Juega con ella para descubrirla!