I'm trying to do a number guessing game where the computer selects a random number and you have to guess it and get an output that's either: Your number is too high, too low or correct number + needed attempts. However with this code:
import numbers
from random import randint
#set x to a random number between 1 and 50
randomnummer = randint(1,51)
print (randomnummer)
#counter = 0
#ask to input a number between 1 and 50 and check if input is valid
def nummer_eingabe():
usernummer = (input("Please enter a number between 1 and 50: "))
usernummer = int(usernummer)
#counter = counter + 1
if usernummer >= 1 and usernummer <= 50:
return usernummer
else:
print("Pleae enter a valid number.")
return nummer_eingabe()
#declare number from function
checked_user_nummer = nummer_eingabe()
#define counter
counter = 0
while checked_user_nummer != randomnummer:
counter += 1
if checked_user_nummer > randomnummer:
print("You need to guess lower. Try again :)")
nummer_eingabe()
continue
elif checked_user_nummer < randomnummer:
print("You need to guess higher. Try again :)")
nummer_eingabe()
continue
elif checked_user_nummer == randomnummer:
strcounter = str(counter)
print("Nice! You needed " + strcounter + " tries to find the right number")
break
#dont allow console to close right away
input()
it goes well until it gets stuck giving the same feedback (either too high or too low)
How do I get out of the While loop? I tried changing up the continue statement with a break but that just causes the code to stop after the second time the input was given.
Also please dont mind the print(randomnummer) on line 5; that's just for debugging purposes.


