Simpler Fehler, finde ihn trotzdem nicht

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
tomu78
User
Beiträge: 1
Registriert: Montag 5. November 2018, 19:39

Hallo!
Ich bin Lehrer, unterrichte fachfremd Informatik und versuche, mit meinen Schülern mit TURTLE ganz simple Sachen zu programmieren. Heute ging es um Buchstaben. Folgendes "A" zeichnet die Turtle, jedoch erscheint ein grüner Strich trotz des Befehls "pen up" zuvor. Weiß jemand Hilfe?

from turtle import *
color('green')
fillcolor('pink')
begin_fill()
speed(5)
fd (30)
rt(60)
fd (30)
lt (60)
fd (30)
lt (120)
fd (120)
lt(60)
fd(20)
lt(60)
fd(120)
lt(120)
fd(30)
lt(60)
fd(30)
rt(60)
fd(25)
lt(90)
pu ()
fd(20)
lt(90)
pd()
fd(20)
rt(120)
fd(30)
rt(60)
fd(10)
rt(60)
fd(30)
rt(120)
fd(30)
end_fill()
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Hmmm, bei erscheint kein grüner Strich im "A", nur wenn ich pu() und pd() auskommentiere
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Ich kann den angeblichen Fehler nicht nachvollziehen. Nur das Füllen funktioniert nicht perfekt, weil die Turtle zu weit läuft.
Mal eine Frage: was ist der pädagogische Nutzen, eine Figur aus 28 Teilen malen zu lassen?
Beim Programmieren sollte man keine kryptischen Abkürzungen benutzen. Schreibe statt lt left, fd forward, pu penup, rt right, usw. dann ist das auch lesbar. Vor einer öffnenden Klammer sollte kein Leerzeichen stehen.
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Ich habe die Namen mal ersetzt und es durch ein `done()` ergänzt, damit das Fenster nicht gleich wieder verschwindet, und ich kann den Fehler mit der grünen Linie auch nicht nachvollziehen.

Code: Alles auswählen

#!/usr/bi/env python3
from turtle import *

color('green')
fillcolor('pink')
begin_fill()
speed(5)

forward(30)
right(60)
forward(30)
left(60)
forward(30)
left(120)
forward(120)
left(60)
forward(20)
left(60)
forward(120)
left(120)
forward(30)
left(60)
forward(30)
right(60)
forward(25)
left(90)

penup()
forward(20)
left(90)
pendown()

forward(20)
right(120)
forward(30)
right(60)
forward(10)
right(60)
forward(30)
right(120)
forward(30)

end_fill()
done()
Was den pädagogischen Nutzen angeht: Man könnte vielleicht als nächsten Schritt zeigen wie man das ganze in eine kurze Schleife umwandelt, welche die Daten aus einer Datenstruktur bekommt, statt die Daten als Code zu schreiben. :-)
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Antworten