我正在做一个猜谜游戏的程序;只有当一个数字比随机数大 3 或小 3 时,我才需要能够让程序给出 H 或 L 的反馈。
这是我目前拥有的
import random
def game3():
rndnumber = str(random.randint(0,9999)) #gets a number between 0-9999
while len(rndnumber) < 4:
rndnumber = '0'+ rndnumber # adds 0s incase the number is less then a 1000
print(rndnumber) #lets me know that the program generates the right type of number (remove this after testing)
feedback = 0 #adds a variable
for x in range(1,11): #makes a loop that runs for 10 times
print("Attempt",x)
attempt = input("Guess a number between 0-9999:")#gets the users guess
feedback = "" #makes a feedback variable
for y in range(4): #makes a loop that runs for 4 times
if attempt[y] == rndnumber[y]: #if attempt is the same then add a Y to the number
feedback += "Y"
elif attempt[y] < rndnumber[y]:
feedback += "L"
elif attempt[y] > rndnumber[y]:
feedback += "H"
else:
feedback += "N"
print(feedback)
if x == 10:
print("You Lose the correct answer was",rndnumber)
if feedback == "YYYY" and x > 1:
print("You win it took",x,"attempts.")
break; #stops the program
elif feedback == "YYYY":
print("You won on your first attempt!")
break; #stops the program