现在,是找到他们原来名字的时候,(于敏、王大珩(héng)、王希季、朱光亚、孙家栋、任新民、吴自良、陈芳允、陈能宽、杨嘉墀(chí)、周光召、钱学森、屠守锷、黄纬禄、程开甲、彭桓武,王淦(gàn)昌、邓稼先、赵九章、姚桐斌、钱骥、钱三强、郭永怀)。 设计实现一个代号对应名字的猜字系统,需要实现当猜测失败后,随机出相应的提醒,提醒包括首字的笔画,总笔画,首字拼音字母等其中之一
时间: 2023-09-16 22:16:15 浏览: 160
好的,这个猜字系统需要一些数据来存储这些代号对应的名字,我建议可以使用一个字典来存储,代号作为key,名字作为value。然后可以设计一个猜字游戏的界面,让用户输入代号进行猜测,如果猜测错误,则可以随机出一个提示,比如首字的笔画、总笔画、首字拼音字母等其中之一。如果猜测正确,则可以输出对应的名字。
以下是一个简单的 Python 实现,您可以参考一下:
```python
import random
name_dict = {
"001": "于敏",
"002": "王大珩(héng)",
"003": "王希季",
"004": "朱光亚",
"005": "孙家栋",
"006": "任新民",
"007": "吴自良",
"008": "陈芳允",
"009": "陈能宽",
"010": "杨嘉墀(chí)",
"011": "周光召",
"012": "钱学森",
"013": "屠守锷",
"014": "黄纬禄",
"015": "程开甲",
"016": "彭桓武",
"017": "王淦(gàn)昌",
"018": "邓稼先",
"019": "赵九章",
"020": "姚桐斌",
"021": "钱骥",
"022": "钱三强",
"023": "郭永怀"
}
hints = {
"stroke_num": {
"001": 9,
"002": 16,
"003": 12,
"004": 14,
"005": 11,
"006": 15,
"007": 10,
"008": 12,
"009": 11,
"010": 13,
"011": 13,
"012": 16,
"013": 13,
"014": 17,
"015": 11,
"016": 14,
"017": 11,
"018": 13,
"019": 18,
"020": 16,
"021": 10,
"022": 13,
"023": 13
},
"pinyin": {
"001": "Y",
"002": "W",
"003": "W",
"004": "Z",
"005": "S",
"006": "R",
"007": "W",
"008": "C",
"009": "C",
"010": "Y",
"011": "Z",
"012": "Q",
"013": "T",
"014": "H",
"015": "C",
"016": "P",
"017": "G",
"018": "D",
"019": "Z",
"020": "Y",
"021": "Q",
"022": "Q",
"023": "G"
}
}
def game():
print("欢迎来玩猜字游戏!")
print("一共有%d个名字,代号从001到023。" % len(name_dict))
while True:
code = input("请输入代号进行猜测:")
if code in name_dict:
print("恭喜你猜对了!这个代号对应的名字是:%s" % name_dict[code])
break
else:
hint_type = random.choice(["stroke_num", "pinyin"])
hint = hints[hint_type][code]
print("猜错了,这个名字的%s是:%s" % (hint_type, hint))
game()
```
希望能对您有所帮助!