Un arbre de Pythagore est un arbre qui ressemble à ça:
On peut s’apercevoir que c’est une figure récursive (ou fractale) et donc qu’il est possible de la dessiner en la programmant plutôt qu’en la dessinant “à la main”. Python (par exemple) est donc notre ami pour la construire.
from turtle import forward, left, right, back, pencolor, fillcolor, begin_fill, end_fill, pendown, penup import math from random import uniform def change_color(): e1 = uniform(0,1) e2 = uniform(0,1) e3 = uniform(0,1) return e1,e2,e3 def tree(s,e1,e2,e3): if s < 5: return square(s,e1,e2,e3) e1,e2,e3 = change_color() forward(s) s1 = s / math.sqrt(2) left(45) tree(s1,e1,e2,e3) right(90) forward(s1) tree(s1,e1,e2,e3) back(s1) left(45) back(s) def square(s,e1,e2,e3): pencolor("white") fillcolor(e1,e2,e3) begin_fill() for i in range(4): forward(s) right(90) end_fill() e1,e2,e3 = change_color() penup() left(180) forward(100) right(90) pendown() tree(100,e1,e2,e3)
Dans le code Python, j’ai fait appel au module random afin de choisir au hasard les couleurs.