猜数字游戏,程序产生一个四位随机整数,这个四位数各个数码均不相同,你能猜出这个数 是多少吗?,规则如下: 1-如果你清中一位数字但位置不正确。则显示一个,一.2.如果你清中一位数字且位置也正确,则显示一个·”.写一段代码
时间: 2023-06-20 19:05:39 浏览: 78
好的,以下是一段 Python 代码实现猜数字游戏:
```python
import random
def generate_number():
"""生成四位随机整数"""
digits = list(range(10))
random.shuffle(digits)
return "".join(str(d) for d in digits[:4])
def check_guess(answer, guess):
"""检查猜测的数字是否正确"""
if answer == guess:
return "4A0B"
else:
a, b = 0, 0
for i in range(4):
if guess[i] == answer[i]:
a += 1
elif guess[i] in answer:
b += 1
return f"{a}A{b}B"
# 生成答案
answer = generate_number()
print("猜数字游戏开始!")
while True:
# 获取玩家猜测的数字
guess = input("请输入一个不重复的四位数字:")
if len(guess) != 4 or not guess.isdigit() or len(set(guess)) != 4:
print("请确保输入的是一个不重复的四位数字!")
continue
# 检查猜测的数字是否正确
result = check_guess(answer, guess)
print(result)
# 如果猜对了,结束游戏
if result == "4A0B":
print("恭喜你猜对了!")
break
```
使用方法:运行代码后,程序会生成一个随机的四位数字,然后你需要输入一个不重复的四位数字进行猜测。如果猜测的数字中有某一位数字和答案相同但位置不正确,程序会返回一个“1A0B”的结果;如果某一位数字和答案相同且位置也正确,程序会返回一个“1A1B”的结果,以此类推。当你猜对了所有的数字,程序会输出“4A0B”并结束游戏。
阅读全文