On 11/12/14 04:20, Matthew Nappi wrote:
(code pasted below); however if a player guesses the right number they still receive an ending message indicating that they failed. How can I modify the code without using any advanced techniques to have a different message in the event of a successful guess? Thanks in advance!
import random print("\tWelcome to 'Guess My Number'!") print("\nI'm thinking of a number between 1 and 100.") print("Try to guess it in as few attempts as possible.\n") the_number = random.randint(1, 100) guess = int(input("Take a guess: ")) tries = 1 while guess != the_number and tries < 10: if guess > the_number: print("Lower...") elif guess < the_number: print("Higher...") else: print("You win.") guess = int(input("Take a guess: ")) tries += 1
So far so good, except that you probably don;t want the winner to have to input another number after being told he already won. You can avoid that by making the initial value for guess be something invalid, then move the input line to the top of the while loop: guess = 0 while guess != the_number and tries < 10: guess = int(input("Take a guess: ")) tries += 1 ... the if/else code here.
print("You fail! The number was", the_number)
But you always print this regardless of the result. You need to put a test around it to check whether the guess equals the number and only print this if it is not. -- Alan G Author of the Learn to Program web site http://www.alan-g.me.uk/ http://www.amazon.com/author/alan_gauld Follow my photo-blog on Flickr at: http://www.flickr.com/photos/alangauldphotos _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor