Închisoarea țestoasei
Exercițiu
The turtle has been up to its usual tricks again, robbing liquor stores and building up huge gambling debts. It’s time for turtle to be put into a cell that it can’t get out of.
Hai să facem o nouă variantă de forward(). Una care va întoarce țestoasa complet dacă încearcă să meargă mai departe de 100 de la origine. Vom avea nevoie de o buclă while și de cateva funcții noi:
turtle.distance(0,0) - Distanța țestoasei de la origine
turtle.towards(0,0) - Unghiul pentru a se întoarce la origine
turtle.setheading(angle) - Setează direcția țestoasei
Poți să încerci să te joci cu țestoasa direct în interpretor pentru a verifica exact ce fac, daca dorești.
Acum va trebui să implementăm logica celulei, poate într-o buclă while și folosind niște logică condițională. Este puțin cam complicat dar continuă! Să nu îți fie frică să vorbești cu cineva mai experimentat sau cu alt student.
Soluția
def forward(distance):
while distance > 0:
if turtle.distance(0,0) > 100:
angle = turtle.towards(0,0)
turtle.setheading(angle)
turtle.forward(1)
distance = distance - 1