‹ Zurück zu den Code-Projekten

Nummern Raten

Nov. 2024 · Python

Zahlenraten als Spieler- und als Bot-Version, die sich per Suchstrategie an die Zahl herantastet.

Läuft direkt im Browser (Python via Pyodide) — Ein- und Ausgabe im Terminal.
spieler.pyPython
import random
import os


os.system ('cls')
print ("----Nummern Erraten----")
print()

Max = input ("Max Number : ")
print()
print("---------------")
print ()
if Max.isdigit:
    Max = int(Max)
Max_r = Max + 1

r = random.randrange(Max_r)
Versuche = 0

print ("Eine nummer von 0 -",Max,"wurde generiert versuche sie zu erraten.")
print()
input ("Drücke [Enter] zum starten")


os.system ('cls')


print ("---Errate die Nummer---")
print()
Guess = input ("Nummer : ")
if Guess.isdigit:
    Guess = int(Guess)

Versuche = Versuche + 1

while Guess != r :
    print ("---Errate die Nummer---")
    

    if Guess > r: 
        os.system ('cls')
        print ("---Lower---")

    elif Guess < r:
        os.system ('cls')
        print ("---Higher---")


   
   
    print()
    print ("Letzer Versuch : ",Guess)
    print()
    Guess = input ("Nummer : ")
    Versuche = Versuche + 1
    if Guess.isdigit:
        Guess = int(Guess)


    continue     
    
    
    
if Guess == r:  
        os.system ('cls')
        print ("Gut gemacht du hast die Richtige Zahl erraten!")
        print()
        print ("Richtige Nummer : ", Guess)
        print("Versuche : ", Versuche)
        print ()
        print()
        input("Zum schliesen [Enter] Drücken")

bot.pyPython

import random
import os

while True:
    os.system ('cls')

    Min = 0
    Max = 1000001
    Versuche = 1
    Guess = False

    print ("----Nummern Erraten (BOT)----")
    print ()
    print ("Denke dir eine nummer zwischen 1-1.000.000 aus und merke sie dir.")
    print ()
    input ("Drücke [Enter] wenn du eine nummer hast.")

    os.system ('cls')


    while Guess != True:
        os.system ('cls')
        Versuch = random.randrange(Min,Max)

        print ("----Nummern Erraten (BOT)----")
        print ()
        print (f"---{Versuch}---")
        print()
        Status = input ("Höher (H) oder Niedriger (N) oder Richtig (R) : ")


        if Status.upper() == "R":
            Guess = True
        elif Status.upper() == "H":
            Min = Versuch
            Versuche = Versuche + 1
        elif Status.upper() == "N":
            Max = Versuch
            Versuche = Versuche + 1
        elif Status.upper() != "R" or "H" or "N":
            print ("Schreiben sie bitten nur R / H / N.")
            input ("Drücken sie [Enter] zum Fortfahren")
            Status = input ("Höher (H) oder Niedriger (N) oder Richtig (R) : ")

            if Status.upper() == "R":
                Guess = True
            elif Status.upper() == "H":
                Min = Versuch
                Versuche = Versuche + 1
            elif Status.upper() == "N":
                Max = Versuch
                Versuche = Versuche + 1
            elif Status.upper() != "R" or "H" or "N":
                input ("Ein Fehler ist aufgetreten drücken sie [Enter] zum schliesen.")
                quit()

    print ()
    print (f"Der Bot hat deine Zahl nach {Versuche} herausgefunden.")
    print ()
    Weiter = input ("Schreibe W wenn du Weiter Spielen willst.  ")

    if Weiter.upper != "W":
        quit()