秀场
魔术师对观众说:“我有五张卡片,上面写着数字。
1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,2,3,6,7,10,11,14,15,18,19,22,23,26,27,30,4,5,6,7,12,13,14,15,20,21,22,23,28,29,30,8,9,10,11,12,13,14,15,24,25,26,27,28,29,30,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,你心中想一个0~31中的一个数字。告诉我这个数字在那几张卡片上有(不能多也不能少,有的全说上),我便会知道你想的是什么数字。”果然按照魔术师说的,他猜出了观众选的数字。
揭秘
这个魔术利用的是二进制的原理。
这五张卡片看似没有什么规律,其实:
将0—31这32个数字化为二进制数后,分别为0,1,10,11,……,11110,11111。
凡是在第n张卡片上存在的数,将它化为二进制数后,从右往左数第n位数一定是1。
反之,凡是在第n张卡片上不存在的数,将它化为二进制数后,从右往左数第n位数一定是0。
例如:
在第1,3,4张卡片上都存在,也就是说,将13化为二进制数后,从右往左数第1,3,4位数上都是1,其余位上都是零。所以13(10)=1101(2)(注:括号中的数代表采取几进制),1101(2)=2的三次方+2的平方+0+2的零次方(任何数的零次方均为1)=13。
又如:0在任何卡片上都没有,所以0(10)=0(2),这个数为零。
又如:31在任何卡片上都有,所以31(10)=11111(2)=16+8+4+2+1=31。
奥秘就是这个。明白了吧。