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.
print("Wenn sie ein Quadrat zeichnen möchten drücken sie bitte die 1")
print("Wenn sie ein gleichseitiges Dreieck zeichnen möchten drücken sie bitte die 2")
print("Wenn sie einen Kreis zeichnen möchten drücken sie bitte die 3")
menueauswahl = int(input())
if menueauswahl == 0:
print("Bitte wählen sie einen korrekten Menuepunkt")
if menueauswahl >=4:
print("Bitte wählen sie einen korrekten Menuepunkt")
def zeichne_figur(p_laenge):
if menueauswahl == 1:
quadrat(p_laenge)
if menueauswahl == 2:
dreieck(p_laenge)
if menueauswahl == 3:
kreis(p_laenge)
def quadrat(p_laenge):
penup()
forward(p_laenge/2)
pendown()
right(90)
forward(p_laenge/2)
right(90)
forward(p_laenge)
right(90)
forward(p_laenge)
right(90)
forward(p_laenge)
right(90)
forward(p_laenge/2)
hideturtle()
def dreieck(p_laenge):
right(90)
forward(p_laenge/2)
left(120)
forward(p_laenge)
left(120)
forward(p_laenge)
left(120)
forward(p_laenge/2)
def kreis(p_laenge):
left(90)
penup()
forward(p_laenge/2)
right(90)
circle(p_laenge)
#*******************************************************
from turtle import *
print("Bitte geben Sie eine Laenge für die zeichnung ein")
laenge = int(input())
zeichne_figur(laenge)
def zeichne_figur(p_laenge):
if menueauswahl == 1:
quadrat(p_laenge)
if menueauswahl == 2:
dreieck(p_laenge)
if menueauswahl == 3:
kreis(p_laenge)
Was passiert denn hier wohl, wenn menueauswahl den Wert 2 hat? Das Programm läuft auf das erste if-Statement und stellt fest, dass keine Übereinstimmung zwischen den Werten besteht. Der zugehörige Code wird folglich nicht ausgeführt.
Du solltest erstens deine Einrückungen passend setzen und zweitens über den Einsatz von elif nachdenken.
ich weiß normalerweiße gehört das so aber da streicht er immer das elif an, auch wenn die einrückung zu 100% richtig ist...
Ich hätte ja doch erwartet, dass du dir den korrekten Aufbau des if-Statements in der Dokumentation angesehen hättest nachdem es nicht funktionierte. Ich habe doch extra den Link dahin angegeben. Hol das einfach nach und dann kannst du gegebenenfalls noch erklären, was du unter 100% verstehst.
Ach so, bitte benutze im Forum Python-Code-Tags, das liest sich schöner.
Wobei menueauswahl hier dann wohl global wäre, was unschön ist Ich würde den Parameter also übergeben bzw. den Dispatcher direkt nach der Auswahl platzieren.