import random import time from os import system #constants MAX_ATTEMPTS = 10 MIN_NUMBER = 1 MAX_NUMBER = 50 def introduce() -> None: """Introduces player to the rules of the game.""" print("You will get a total of 10 guesses.") time.sleep(2) print("In 10 guesses you have to guess the correct no. between 1 to 50.") time.sleep(2) print("READY???") for count in range(1, 4): print(count) time.sleep(1) print("GO") time.sleep(1) system("cls") def play_number_guessing_game() -> None: """ Plays the number guessing game. A random number is generated between MIN_NUMBER and MAX_NUMBER. The player is prompted to guess the number within a limited number of attempts. Feedback is provided after each guess. The game ends when the player guesses the correct number or exhausts all attempts. """ num = random.randint(MIN_NUMBER, MAX_NUMBER) guess_list = [] introduce() attempt = 1 while attempt != (MAX_ATTEMPTS + 1): try: guess = int(input("Guess a no.:")) except ValueError: print("Enter a valid number!!") continue if guess == num: print(f"\n\nYou got it right in {attempt} attempts.\nThe no. is {num}") return elif guess in guess_list: print("You already guessed this no. before!") elif guess > num: print(f"The no. is less than {guess}") attempt += 1 print(11-attempt,"Attempts left") elif guess < num: print(f"The no. is greater than {guess}") attempt += 1 print(11-attempt,"Attempts left") guess_list.append(guess) if attempt>=10: system("cls") print("GAME OVER") print("The correct no. was",num) if __name__ == "__main__": play_number_guessing_game()