Zum Hauptinhalt springen

Zahlenraten

Im Grunde einer der Klassiker, egal ob programmierbarer Taschenrechner, 8-bit Homecomputer oder wie hier Python; auf jeder Plattform muss man das mal gemacht haben.
Ideal für die ersten Versuche mit Bedingungen (if-Statements).

flowchart TD
    A[Start] --> B[Zufallszahl erzeugen]
    B --> C[Benutzer wird über Stellenzahl informiert]
    C --> D[Benutzereingabe: Zahl raten]
    D --> E{Eingabe == Zufallszahl?}
    E -- Ja --> F[Richtig geraten! Versuche ausgeben]
    E -- Nein --> G{Eingabe < Zufallszahl?}
    G -- Ja --> H[Hinweis: Meine Zahl ist größer]
    G -- Nein --> I[Hinweis: Meine Zahl ist kleiner]
    H --> D
    I --> D
    F --> J[Ende]
from random import randint

eingabe = 0
versuche = 0
zahl = randint(1, 9999)

print(
    f"\nLass uns Zahlenraten spielen, ich denke mir eine Zahl; meine Zahl hat {len(str(zahl))} Stellen."
)

while eingabe != zahl:
    versuche += 1
    while True:
        try:
            eingabe = int(input("\nRate meine Zahl: "))
            break
        except ValueError:
            print("Bitte nur Zahlen eingeben.")

    if eingabe == zahl:
        print(f"\nDas ist richtig, du hast {versuche} Versuche gebraucht!")
    elif eingabe < zahl:
        print("\nMeine Zahl ist größer.")
    elif eingabe > zahl:
        print("\nMeine Zahl ist kleiner.")