猜数字 智能提示版Q10 E03

概要

相对 E02,这版本会在用户猜错的时候,给出更多的提示

程序输出 2A2B 代表有 两个数字在这个位置上是对的,有两个数是对的,但是位置错了

解释

比如 如果谜底是 1234,用户猜 3634,那么计算机应该提示 2A1B

我们需要使用用户的猜测 跟 谜底做比对。

3   相比 1234,有 3,但位置不对,贡献一个 1B
6   相比 1234,没有匹配的
3   相比 1234,有 3,且位置正确,贡献一个 1A
4   相比 1234,有 4,且位置正确,贡献一个 1A
所以最后是 2A1B

流程

程序 生成谜底

用户 猜测值

程序 匹配 猜测值 和 谜底

如果一样就说成功,

否则 给用户提示精准度,然后让用户继续猜

样例

假设谜底是 3456

<   开始猜吧
>   1234
<   0A2B
>   3434
<   2A1B
>   3456
<   对了

额外挑战

节能显示

显示 几A 几B 时,如果某部分为 0,则不显示该部分

<   开始猜吧
>   1234
<   2B
>   3434
<   2A1B
>   3456
<   对了

谜底数字单一

生成的谜底必须没有重复的数字

0572 是合法的

0057 就需要重新生成谜底

ZZAX 微信公众

文档一更新,立刻告诉你