Wert der Variable erhöhen

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
norgsmen
User
Beiträge: 55
Registriert: Samstag 26. Juni 2021, 22:09

Hi Community,

Code: Alles auswählen

run = True
while run:
    a = int(input('deine Zahl: '))
    counter = 0
    if a >= 1:
        counter +=1
    if counter == 10:
        run = False
    print(counter)
leider erhöht sich der Wert von counter nicht. Sobald ich aber counter außerhalb der while Schleife schreibe, dann wird der Wert jedes mal um eins erhöht, wenn a>=1 ist.

Hat jemand eine Ahnung weshalb das so ist?

Danke!
__deets__
User
Beiträge: 14542
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wieso erwartest du denn, dass der Counter sich erhöht, wenn du ihn jede Runde explizit wieder auf 0 setzt?
norgsmen
User
Beiträge: 55
Registriert: Samstag 26. Juni 2021, 22:09

@__deets__ oh man.. Was für ein Schusselfehler. Danke für die Antwort
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

Die Variable `run` ist unnötig; die Bedingung wird ja durch `counter` bestimmt:

Code: Alles auswählen

counter = 0
while counter < 10:
    a = int(input('deine Zahl: '))
    if a >= 1:
        counter += 1
    print(counter)
Antworten