[ad_1]
Le code est censé pouvoir produire un nombre aléatoire et vous indiquer si vous êtes supérieur ou inférieur. Je veux pouvoir limiter le nombre de suppositions faites pour le trouver.
Python
import random MAX_NUM = 100 max_tries_allowed = 10 print("\tWelcome to 'Guess My Number !'") print(f"\nI'm thinking of a number between 1 and {MAX_NUM}") print("Try to guess it in as few attempts as possible. \n") # Set the initial values the_number = random.randrange(MAX_NUM) + 1 guess = None tries = 0 #guessing loop while (guess != the_number): guess = int(input("Take a guess: ")) if (tries == max_tries_allowed): print("You lose") elif (guess > the_number): print("Lower...") else: print("Higher...") tries += 1 print("You guessed it! The number was ", the_number) print("And it only took you ",tries, " tries!\n") input("\n\nPress the Enter key to exit")
Ce que j’ai essayé :
Je suis un codeur débutant mais j’ai le programme de base qui fonctionne, mais la seule chose qui ne fonctionne pas est le nombre limité de suppositions faites.
Solution 1
Vous êtes très proche de ça. Votre condition de boucle while doit être étendue afin qu’elle ne se contente pas de vérifier si le nombre correspond à la supposition. Il doit également vérifier si vous avez dépassé le nombre maximum d’essais autorisés. Réorganisez votre clause while comme ceci :
found = false while (found == false and tries < max_tries_allowed) guess = int(input("Take a guess: ")) tries += 1 if (guess = the_number): found = true if (guess > the_number): print("Lower...") elif (guess < the_number): print("Higher...") else: found = true if (found == false): print("You didn't find the number")
Quelque chose comme ça devrait aider.
[ad_2]
コメント