Dolžina črte
Completion requirements
Želvi dodaj lastnost (atribut) length, ki bo vsebovala dolžino črte, ki jo
je doslej narisala želva.
t = Turtle()
print(t.length) # izpiše 0
t.forward(15)
print(t.length) # izpiše 15
t.turn(50)
print(t.length) # izpiše 15, saj želva med obračanjem ne riše
t.backward(5)
print(t.length) # izpiše 20 (ne 10! želva, ki gre nazaj riše, ne briše! ;)
t.fly(100, 100, 0)
print(t.length) # izpiše 20, saj želva med letenjem ne riše
t.pen_up()
t.forward(5)
print(t.length) # izpiše 20, saj želva z dvignjenim peresom ne riše
Dopolnjuj razred Turtle, ki je priložen testom.
Rešitev
V __init__ je potrebno dodati vrstico
self.length = 0
S tem želvi dodamo atribut length.
V forward pa znotraj if-a -- se pravi le, ko je pero spuščeno -- dodamo
self.length += abs(a)
abs je potreben, da bomo dolžino povečevali tudi, ko gre želva nazaj.
Metode backward ni potrebno spreminjati, ker backward tako ali tako pokliče
forward -- trik, ki smo ga uporabljali tudi na predavanjih.
Last modified: Thursday, 9 May 2019, 2:01 PM