揭开《猜姓》游戏的奥秘

上传人:飞*** 文档编号:42792940 上传时间:2018-06-03 格式:DOC 页数:13 大小:96.50KB
返回 下载 相关 举报
揭开《猜姓》游戏的奥秘_第1页
第1页 / 共13页
揭开《猜姓》游戏的奥秘_第2页
第2页 / 共13页
揭开《猜姓》游戏的奥秘_第3页
第3页 / 共13页
揭开《猜姓》游戏的奥秘_第4页
第4页 / 共13页
揭开《猜姓》游戏的奥秘_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《揭开《猜姓》游戏的奥秘》由会员分享,可在线阅读,更多相关《揭开《猜姓》游戏的奥秘(13页珍藏版)》请在金锄头文库上搜索。

1、揭开猜姓游戏的奥秘曾见街头有人摆摊猜姓。摊主面前摆着七八张写着姓氏的纸片,只要有人说出那几张纸片上有他的姓氏,那几张纸片上没有,摊主立马就能准确说出他的姓氏来。猜姓游戏与猜年龄游戏一样,运用的是二进制数与十进制数的换算知识。这两种游戏又都是最低级的密码游戏。大家对电视剧中的发报场面很熟悉,这边一个发报员,那边一个收报员。发报员把要传送的信息编成密码(密文)发送出去,收报员收到电报密码(密文)后,对照密码本把密文翻译成明文就知道了发报员发送的信息。猜姓游戏就是这样。摊主相当于收报员(处主动地位),他面前摆着的几张纸片就是密码本,其他参与者是发报员(处被动地位)。密码本是摊主编辑的,其他参与者对此

2、毫不知情。密码、密码本是这样生成的:以 6 张写着姓氏的纸片外加一张姓氏对照表为例。6 张纸片就是要用 6 位二进制数作为系列密码。每张纸片表示一个二进制数数位。因为最大的 6 位二进制数1111112=63,所以,能猜 63 个姓氏。如果是 7 张纸片,就是用 7 位二进制数为系列密码,能猜出11111112=127 个姓氏来。余类推。先按顺序(也可打乱顺序)取百家姓中前(也可根据各地姓氏特点挑选)63 个姓氏,顺次用十进制数编好序号(未加密的密码),就得出了姓氏对照表。如下:姓氏对照表1 赵 2 钱 3 孙 4 李 5 周 6 吴 7 郑 8 王9 冯 10 陈 11 褚 12 卫 13

3、蒋 14 沈 15 韩 16 杨 17 朱 18 秦 19 尤 20 许 21 何 22吕 23 施 24 张 25 孔 26 曹 27 严 28 华 29 金 30 魏 31 陶 32 姜 33 戚 34 谢35 邹 36 喻 37 柏 38 水 39 窦 40 章 41 云 42 苏 43 潘 44 葛 45 奚 46 范 47 彭48 郎 49 鲁 50 韦 51 昌 52 马 53 苗 54 凤 55 花 56 方 57 俞 58 任 59 袁 60 柳61 酆 62 鲍 63 史 再把姓氏前的序号(密码)换算成二进制 6 位数(加密为了使他人更难弄懂)。赵 1=0000012钱 2=

4、0000102孙 3=0000112鲍 62=1111102史 63=1111112 这些二进制 6 位数就是其对应的姓氏经过加密后的密码。(为什么要用二进制数作为系列密码?因为二进制数每个数位上的数字只有 0 或 1 两种选择,这样处理起来方便。)然后,按数位顺序(C5C4C3C2C1C0)把 0 位是 1的姓氏写在表一里,1 位是 1 的姓氏写在表二里,2位是 1 的姓氏写在表三里,余类推。得出 6 张写着姓氏的纸片。每张纸是一个表。每个表中都有22222=32 个姓氏。如下:表一(0 位是 1 的姓氏)赵 孙 周 郑 冯 褚 蒋 韩 朱 尤 何 施 孔 严 金 陶戚 邹 柏 窦 云 潘

5、奚 彭鲁 昌 苗 花 俞 袁 酆 史表二(1 位是 1 的姓氏)钱 孙 吴 郑 陈 褚 沈 韩秦 尤 吕 施 曹 严 魏 陶谢 邹 水 窦 苏 潘 范 彭 韦 昌 凤 花 任 袁 鲍 史表三(2 位是 1 的姓氏)李 周 关 郑 卫 蒋 沈 韩许 何 吕 施 华 金 魏 陶喻 柏 水 窦 葛 奚 范 彭 马 苗 凤 花 柳 酆 鲍 史表四(3 位是 1 的姓氏)王 冯 陈 褚 卫 蒋 沈 韩张 孔 曾 严 华 金 魏 陶章 云 苏 潘 葛 奚 范 彭 方 俞 任 袁 柳 酆 鲍 史表五(4 位是 1 的姓氏)杨 朱 秦 尤 许 何 吕 施张 孔 曾 严 华 金 魏 陶郎 鲁 韦 昌 马 苗 凤

6、 花方 俞 任 袁 柳 酆 鲍 史表六(5 位是 1 的姓氏)姜 戚 谢 邹 喻 柏 水 窦 章 云 苏 潘 葛 奚 范 彭 郎 鲁 韦 昌 马 苗 凤 花方 俞 任 袁 柳 酆 鲍 史每张表中姓氏的顺序可打乱,那样更能迷惑人。到此,密码、密码本就编好了。游戏过程就是一个“发报收报密文明文”的过程。发报收报:摊主在编辑密码前就已经定义了1 和 0 的意义,1 表示有,0 表示无。当其他参与者回答摊主那几张纸(表)上有他的姓氏,那几张没有时,就充当了一个被动的发报员,把自己姓氏的密码在不知情的情况下发送给了摊主。那几张纸上有,这张纸所代表的数位上的数字就是 1,没有就是 0。摊主收到了这些信息,

7、就得出了对方姓氏对应的密码一个二进制 6 位数(密文)。以下就是把(密文)翻译成明文了。密文明文:摊主收到的原始密码(一个二进制 6 位数)是一个经过了加密的密文,把这个二进制6 位数换算成十进制数就得到了解密的密文,再把这个十进制数作为序号对照姓氏对照表(密码本),找出所对应的姓氏,就把密文翻译成了明文。对方姓氏是啥就明白了。例如:有人说表三、表五中有他的姓氏,余没有。就是说他的姓氏密码 2 位、4 位上是 1,其它数位上是 0,这个数是0101002,换算成十进制数是0101002=20,查姓氏对照表,20 对应的姓氏是许。所以,这人姓许。当然,实际操作起来没这么复杂。根据C5C4C3C2

8、C1C02=C532+C416+C38+C24+C12+C01知二进制数 0 位、1 位、2 位、3 位、4 位、5位上的 1 所代表的十进制数分别是1、2、4、8、16、32。所以,只要记住表一、表二、表三、表四、表五、表六所对应的数分别是1、2、4、8、16、32 就行。这样,只要有人说出那几张纸上有他的姓氏,只需把这几张纸对应的数加起来,所得和就是他的姓氏在姓氏对照表中的序号。对号入座就知道他姓什么了。还以许为例,表三、表五中有,余没有。表三、表五分别对应 4、16。4+16=20。查姓氏对照表,20对应许,所以他姓许。实际玩这游戏时,每张纸片上不需标出表一、表二的字样,只要标上一个自己

9、明白的记号就行。姓氏对照表也不需出示于人,可熟记于心,这样让人觉得更玄。破解破解 猜年龄猜年龄游戏之迷游戏之迷一天,几个学生问我:“老师,昨天 我们去逛集,看到一老人在摆地摊猜年龄, 我们几个都输了钱。你能帮我们解开其中 之迷吗?”原来,那老人面前的地摊上摆 着 6 张纸,每张纸上都写着 32 个数字,只 要你说出那几张纸上有你的年龄数,他就 能一口说出你的年龄来。他若说对了,你 给他 1 块钱;若是说错了,他就赔你 10 块 钱。 其实,这就是个二进制游戏,耍的是 十进制数与二进制数换算的花枪。6 张写着 数字的纸就是特制的 6 张表,这 6 张特制 的表能表示出任意一个二进制 6 位数。最

10、 大的二进制 6 位数是1111112=63,所以这 6 张纸上按规律列着 163 这 63 个数字, 能猜出不大于 63 岁的任何一个人的年龄。设二进制 6 位数的一般形式为C5C4C3C2C1C02,C0、C1、C2、C3、C4、C5分别表 示二进制数 0 位、1 位、2 位、3 位、4 位、 5 位上的数字。先把 163 这 63 个十进制 数通过换算表示成二进制 6 位数:1=0000012 2=0000102 3=0000112 62=1111102 63=1111112 再把 0 位是 1 的数按从小到大的顺序 列在表一里,1 位是 1 的数也照样列在表二 里,2 位是 1 的数照

11、样列在表三里,余此类 推。得表如下:表一(0 位是 1 数)13579111315 1719212325272931 3335373941434547 4951535557596163表二(1 位是 1 的数)2367101114151819222326273031 3435383942434647 5051545558596263 表三(2 位是 1 的数)456712131415 2021222328293031 3637383944454647 5253545560616263表四(3 位是 1 的数)89101112131415 2425262728293031 40414243444

12、54647 5657585960616263 表五(4 位是 1 的数)1617181920212223 2425262728293031 4849505152535455 5657585960616263表六(5 位是 1 的数)3233343536373839 4041424344454647 48495051525354555657585960616263 二进制数每个数位上的数字要么是 0, 要么是 1,就此两种选择。上述各表都是先 确定一个数位上的数字,另五个数位上的 数字都有 0 与 1 两种选择,所以每张表中 都有22222=32 个数。 游戏原理:对于一个数如果能确定它 每个数

13、位上的数字是几,就能确定 这个数 是多少。 如:一个数个位上是 3,十位上是 6, 百倍上是 9,这个数就是 963。十进制数是 这样,二进制数也是这样。 猜年龄游戏中,先让人说出那几张表 中有他的年龄数,余下各表没有,就是借 此确定二进制 6 位数中各个数位上的数字。 那几张表中有他的年龄数,就是说那几个 数位 上是 1(表一中有,0 位是 1;表二中 有,1 位是 1;余此类推);余下各表没有, 就是说余下各个数位上是 0。如此,这个二 进制数是多少就确定出来了,再换算成十 进制数也很容易。C5C4C3C2C1C0=C532+C416+C38+ C24+C12+C01 上式是说二进制数中

14、0 位、1 位、2 位、 3 位、4 位、5 位上的 1 分别表示十进制数 1、2、4、8、16、32。 如此,若确定了二进制数那几个数位 上的数是 1,只要把这几个数位上的 1 所表 示的十进制数相加,得出的和就是这个二 进制数换算成的十进制数了。 再看表一至表六左上角的数,正好是 1、2、4、8、16、32。所以,只要说出那 几张表上有他的年龄数,就把那几张表左 上角的数相加,得出的和就是他的年龄。 例如:表二、表三、表五中有甲的年 龄,余表没有。甲年龄是多少? 解:把表二、三、五左上角的数 2、4、16 相加得 2+4+16=22(岁) 所以,甲是 22 岁。 猜年龄游戏就是先通过表上指证确定 年龄的二进制数,再换算成十进制数,这 样一个过程。若要猜出大于 63 岁的人的年龄,列七 张表就行。最大的二进制七位数是 11111112=127 所以,列七张表能猜 出不大于 127 岁年龄段内任何一个人的年 龄来。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号