On dispose d'un carré de longueur de côté c. On aimerait le découper (le paver) en \( 2^n \) petits carrés de longueur de côté \( \frac{c}{2^n}\).
Proposer une fonction python récursive avec la tortue.
- documentation
- cas de base
- un code
On trouvera la doc sur le module turtle ici.
Un pavage en quatre carrés.
import turtle as tl
def carre(lgCote, n=4) :
if(n > 0) :
tl.forward(lgCote)
tl.right(90)
carre(lgCote, n-1)
def pave(cote, n=4) :
if(n>0) :
carre(cote/2)
tl.forward(cote)
tl.right(90)
pave(cote, n-1)
tl.setheading(90) # orientation intiale de la tête : vers le haut
tl.hideturtle() # on cache la tortue
tl.speed(0) # on accélère la tortue
pave(cote = 40)
tl.exitonclick() # pour garder ouverte la fenêtre
import turtle as tl
def pave(cote, n) :
if (n>0) :
for _ in range(4) :
pave(cote/2,n-1)
tl.forward(cote)
tl.right(90)
tl.setheading(90) # orientation intiale de la tête : vers le haut
tl.hideturtle() # on cache la tortue
tl.speed(0) # on accélère la tortue
pave(cote = 200, n = 4 )
tl.exitonclick() # pour garder ouverte la fenêtre