黑白棋通信
魔术师和他的徒弟上台表演,下面有三个观众,魔术师蒙住眼睛。
(1)桌子上随机排列七个黑白棋子,魔术师蒙着眼睛,看不到棋子。
(2)徒弟才看完这个七枚棋子后,在右面又添了一个棋子,与其他棋子并排,这时有八枚棋子,魔术师依然蒙着眼睛。
(3)此时观众可将一枚棋子翻转,或不反转任何棋子,此间,徒弟观众一言不发,魔术师还是蒙着眼睛,并不知道观众有没有反动棋子。
(4)魔术师摘下眼罩,观察八枚棋子,然后马上就能说出“观众翻转了棋子”或“没有反转棋子”。
思考一下魔术师怎么识破观众的行为呢。
TIPS:
徒弟只放了一个棋子,而且放旗子的动作在观众的动作之前,那么,徒弟是如何向魔术师传递有没有翻转棋子的信息呢?
魔术师和徒弟虽然没有用语言交流,但是仅仅通过一枚棋子进行交流。思考一下交流的方法。
答案
徒弟在观众摆放的7枚棋子中,数出黑棋子的个数,如果黑棋子是奇数,添加黑棋子,如果黑棋子是偶数,添加白棋子。所以最终黑棋子一定是偶数。
所以观众只要翻了棋子,一定会使黑棋子的奇偶性发生改变,如不翻动,奇偶性不变。
所以魔术师摘下眼罩,数一数黑棋子的个数就好啦。
奇偶校验
将这个戏法的白棋子看做是二进制的0,黑棋子看成1.那么他就和计算机中的奇偶校验方法是一样的。
徒弟是发送方,魔术师是接收方,中途翻动棋子的观众就是干扰通信的噪音。
徒弟作为发送方放置的一枚棋子,在通信领域中被称为奇偶校验位。魔术师作为接收方,通过检查奇偶性来判断是否因为噪音发生了通信错误。至于奇偶校验位是设为奇数还是偶数,那个是发送方和接收方先前商定好的。