Attention : cette activité est devenue obsolète depuis que Microalg a intègré une tortue. Voir la page correspondante dans la galerie de Microalg.
Une partie du langage LOGO, développé par Wally Feurzig et Seymour Papert en 1966, est consacrée à l’interaction de l’utilisateur avec une tortue qui dessine en laissant une trace derrière elle.
Le langage Python intègre cette tortue dans son module
turtle
(voir la documentation
officielle),
inclus dans la distribution standard.
Un memento des Tortues a été constitué sur ce site si vous voulez pratiquer sans utiliser Python.
On travaille à partir du squelette de fichier tortue.py. Il faut télécharger ce fichier et l’exécuter.
Faire en sorte que la procédure square
dessine effectivement un carré.
Dessiner :
Créer une procédure pour empiler les carrés.
S’en servir pour dessiner plusieurs empilements différents sur un même dessin, tant par le nombre de carrés que par la taille des carrés.
Effectuer sur papier un dessin figuratif, uniquement à base de carrés. Si possible avec des empilements.
Si vraiment vous pensez que c’est nécessaire, vous pouvez utiliser des
triangles équilatéraux ou des triangles rectangles et isocèles.
Il faudra dans ce cas définir la procédure triangle
.
Programmer ce dessin avec la tortue, sans utiliser d’autre instruction que :
turtle.penup()
et turtle.pendown()
turtle.forward(longueur)
, turtle.left(angle)
et turtle.right(angle)
,
avec des angles multiples de 90, 45, voire 15 degrés, mais pas moins,turtle.speed("fastest")
si votre dessin devient long à exécuter,def
,Si vous avez besoin d’inspiration, vous pouvez aller voir la galerie d’images.
Une fois le premier dessin programmé, programmer le même dessin à côté en plus petit puis en plus grand, un peu comme dans Boucle d’Or.
L'idéal étant par la suite de généraliser à n dessins.
import turtle
def square(side):
...
def triangle(side):
...
# instructions pour le dessin
turtle.pendown()
...
Devient :
import turtle
def square(side):
...
def triangle(side):
...
def dessin(taille):
# instructions pour le dessin
...
dessin(50)
dessin(100)
dessin(150)