आप एक पायथन कोड कैसे लिखते हैं जो एक यादृच्छिक संख्या उत्पन्न करता है और इसे खोजने के लिए अनुमान की मात्रा को सीमित करता है?


कोड का उद्देश्य एक यादृच्छिक संख्या उत्पन्न करना और आपको यह बताना है कि आप उच्चतर या निम्न हैं। मैं इसे खोजने के लिए किए गए अनुमानों की मात्रा को सीमित करने में सक्षम होना चाहता हूं।

अजगर
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")

मैंने क्या प्रयास किया है:

मैं एक नौसिखिया कोडर हूं लेकिन मेरे पास काम करने के लिए आधार कार्यक्रम है लेकिन एकमात्र चीज जो नहीं है वह सीमित मात्रा में अनुमान लगाना है।

समाधान 1

आप इसके बहुत करीब हैं. आपकी while लूप स्थिति को विस्तारित करने की आवश्यकता है ताकि यह केवल यह न देखे कि संख्या अनुमान से मेल खाती है या नहीं। यह देखने के लिए भी जाँच करने की आवश्यकता है कि क्या आप अनुमत प्रयासों की अधिकतम संख्या से आगे निकल गए हैं। अपने while खंड को इस प्रकार पुनर्व्यवस्थित करें:

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")

कुछ इस तरह से मदद मिलनी चाहिए.

コメント

タイトルとURLをコピーしました