# s12af5_turtle_sierpinsky_carre.py # Série 12, activité F.5 # Fonction, utilisant la turtle # Dessin du tapis de Sierpinski carré # c.f. https://docs.python.org/3/library/turtle.html # c.f. https://docs.python.org/3/library/turtle.html#turtle.speed from turtle import * from time import sleep setup(width=800, height=800, startx=10, starty=15) title("Tapis de Sierpinski carré") speed(0) # 0 = vitesse maximale, 10 = rapide, 1 = lent def carre(taille, couleur): "fonction qui dessine un carré de taille et de couleur déterminées" color(couleur) begin_fill() down() c =0 while c <4: forward(taille) right(90) c = c +1 up() end_fill() # aide sur la fonction #print(carre.__doc__) def tapis(taille, niveau): "Dessine un tapis de Sierpinski carré"\ "de dimention 'taille' et de niveau donné" if (niveau <= 0): carre(taille, 'black') return # Dessin les 8 sous-tapis de Sierpinski nn = 0 while nn < 8: nn = nn+1 forward(taille/3) tapis(taille/3, niveau-1) if (nn % 2 == 0): forward(taille/3) right(90) # Fonction __main__ up() pensize(1) goto(-390, 390) #tapis(729,5) #tapis(243,4) #tapis(81,3) #tapis(27,2) #tapis(9,1) #tapis(3,0) tapis(243,3)