Betreff führt zweite und dritte If anweisung nicht aus

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.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Snake19 hat geschrieben:Ah hab den vorher schon zwei werte zugewiesen verstehe.
Ehe das später zu Missverständnissen führt sollten wir hier die Aussage besser korrigieren. Du hast nicht zwei Werte zugewiesen, du hast zweimal einen Wert zugewiesen. Noch präziser wäre die Aussage, dass du zweimal nacheinander einen Wert an den selben Namen gebunden hast.
Snake19 hat geschrieben:Ah hab den vorher schon zwei werte zugewiesen verstehe. Aber das mit der if anweisung ist mir noch ein rätsel.

Du hast die Bedingung if alter > 10 or alter <=12. Der Gesamtausdruck wird True, sobald auch nur einer der beiden Teilausdrücke wahr ist. Jetzt überlege dir, was jeweils bei Werten von 8, 12 und 16 passiert. Wann tritt der Fall ein, dass beide Teilausdrücke falsch sind und damit ein False als Gesamtergebnis liefern? Liefere eine Beispielzahl bei der das so ist und wir können das intensiver durchgehen.
Snake19
User
Beiträge: 9
Registriert: Sonntag 20. November 2011, 13:25

Ok da stimmt will es aber so machen das Mädchen zwischen 10 und 12 Jahren nru da rein kommen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Schau doch mal...

Code: Alles auswählen

0...9 | 10...12 | 13.....
   A         B         C
Überlege doch mal, welche Bedingungen Zahlen in den drei Bereichen erfüllen müssen. Anschließend kann man dann überlegen, wie man ggf. Bereich A und C von den Bedingungen her zusammenführen kann.
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Snake19 hat geschrieben:Ok da stimmt will es aber so machen das Mädchen zwischen 10 und 12 Jahren nru da rein kommen.
Ich zitiere und formatiere: "[...] Mädchen zwischen 10 und 12 Jahren [...]"

Das Wissen um die Bedeutung der Worte "und" und "oder" setze ich momentan noch als bekannt voraus.
Snake19
User
Beiträge: 9
Registriert: Sonntag 20. November 2011, 13:25

Hab es hinbekomen sry stand voll auf dem Schlauch wenn man mal wo hängt und die ganze zeit drüber krübelt kommt man nicht mehr drauf. :-)

Code: Alles auswählen

 # -*- coding: cp1252 -*-
print "Wir suchen Spielerinnen für eine Fußballmannschaft"
geschlecht = raw_input("Welches Geschlecht bist du?")
name = raw_input("Wie ist dein Name: ")
alter = int(raw_input("Gib dein Alter an: "))
if geschlecht == 'w':
       if alter >= 10 and  alter <=12:
        print "Du darfst in der Mannschaft spielen", name
       else:
        print "Du kannst leider nicht in die Mannschaft", name
else:
    print "Du bist ein Junge kannst leider nicht in die Mannschaft", name

Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Zudem haben wir Python-Code-Tags ;-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Antworten