En cursos anteriores he preparado ejercicios que por distintos ya no he utilizado este curso. Estos ejercicios se pueden utilizar como ejercicios de ampliación, aunque a medida que estos ejercicios son más antiguos, el estilo del código de Python.
He pensado siempre que la creación de dibujos era un buen ámbito para trabajar los bucles y estos ejercicios son el resultado de sucesivos intentos:
Como la creación de dibujos no es inmediata en Python, empecé trabajando con dibujos de ASCII-Art, es decir, figuras realizadas con caracteres ASCII. El problema es que los dibujos deben generarse línea a línea, algo bastante artificial.
Durante un par de años utilicé el modulo turtle que permite crear dibujos geométricos por el método de la tortuga, es decir, controlando el movimiento de un cursor que dibuja directamente en la pantalla. El problema es que los movimientos son en línea recta, por lo que no es fácil dibujar figuras con curvas.
Durante un par de años utilicé Brython, una biblioteca que convierte código Python en JavaScript, lo que permite crear páginas web con código Python incrustado (con limitaciones, no admite el lenguaje Python completo, ni todas las bibliotecas estándar). La idea de estos ejercicios es escribir páginas HTML con código Python incrustado que genere gráficos SVG. El abanico de formas se abre así enormemente, el problema es que la depuración de los programas es difícil para los alumnos, porque los errores pueden estar tanto en el código Python como en la manipulación del DOM como en el código SVG generado.