摘要:

二進位是由十進位轉換而成,它的數字都由1、0組成的。我們研究發現由十進位轉換而成的二進位的數字可以不只局限在於1~127,它的數可以更加深加廣,並且可以利用二進位的規則轉換成遊戲。我們利用2n-1的規則,並用十進位轉二進位的方式,想出一個可以猜到別人心中所想的數的遊戲。過程中,我們發現利用這個規則不但可以計算出更大的數,也可以延伸出更多的遊戲。我們將重點放在二進位的擴展與三進位的研究,許多資料中提到的二進位轉換都只有到127而已,我們針對127以後的數進行研究,探討是否可以跟127以前的數一樣,同時也研究三進位的規則,並轉換成遊戲。對於二進位的擴展和三進位的研究,我們發現二進位以後的數和三進位也都可以研究出規則,和轉換成遊戲。

壹、研究動機:

有一次,老師拿了一組六張卡片的遊戲,叫我們在心中默想一個數,然後依次回答六張卡片中有沒有你心中所想的數,結果老師分別將我們心中的數猜出來,這時我們只覺得很神奇,但也因為這個小小的遊戲,使我們決定一起去研究它。

貳、研究目的:

一、研究是否能猜出比63更大的數。

二、研究比63更大的數至少需多少張卡片。

三、探討是否可利用其他路徑猜出答案。

四、研究其他進位法是否也有類似的規則。

參、研究過程或方法

一、玩家祕笈:

(一)、請玩家從1~63中選擇一個數字,不要告訴莊家。

(二)、莊家將下面(表一)的六張卡片拿給玩家看,請玩家檢查所選的數字出現在哪幾張卡片上,將這幾張卡片的編號告訴莊家。

(三)、莊家根據玩家所告知的編號,就可以猜出玩家所選擇的數字是哪一個。

例如:

玩家心理想的數是「19」,然後莊家給玩家看(表一),玩家告訴莊家他所選擇數字出現在編號「一」、「二」、「五」的卡片中。

然後莊家沉思了幾秒鐘就回答「19」

玩家驚呼:「哇!好厲害喔!」

莊家說:「這沒什麼啦!」

二、莊家祕笈:

二進位:1~63

一

1   3   5   7   9  11  13  15

17        19  21  23  25  27  29  31

33        35  37  39  41  43  45  47

49  51  53  55  57  59  61  63

二

2   3   6   7  10  11  14  15

18  19  22  23  26  27  30  31

34  35  38  39  42  43  46  47

50  51  54  55  58  59  62  63

三

4         5   6   7  12  13  14  15

20        21  22  23  28  29  30  31

36  37  38  39  44  45  46  47

52  53  54  55  60  61  62  63

四

8   9   10  11  12  13  14  15

24  25  26  27  28  29  30  31

40  41  42  43  44  45  46  47

56  57  58  59  60  61  62  63

五

16        17  18  19  20  21  22  23

24        25  26  27  28  29  30  31

48        49  50  51  52  53  54  55

56  57  58  59  60  61  62  63

六

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

(表一)

這個問題其實是利用二進位來設計的一個遊戲,第一張卡片所代表的是=1(十進位),這些數在二進位裡表示,第一位數都是1;第二張卡片所代表的是=2(十進位),這些數在二進位裡表示,第二位數都是1,以此類推第六張卡片所代表的是=32(十進位),這些數在二進位裡表示第六位數都是1。請參照(表二)。

十進位的數都可以用二進位來表示,例如:19在六位數的二進位表示為010011,所以19這個數字會出現在第一張、第二張和第五張卡片內,也就是說19=16+2+1。而52在6個位數的二進位表示為110100,所以52這個數字會出現在第三張、第五張和第六張卡片內,也就是說52=32+16+4。因此,1~63的數都可以用六位數的二進位來表示,所以不管玩家想哪一個數,都可以在六張卡片中找到這個數,這樣莊家就可以根據玩家所告知的卡片編號和二進位的法則,讓具有「讀心術」的莊家讀出玩家究竟選擇哪一個數字。

十進位數字

二進位表示

十進位數字

二進位表示

十進位數字

二進位表示

十進位數字

二進位表示

1

000001

17

010001

33

100001

49

110001

2

000010

18

010010

34

100010

50

110010

3

000011

19

010011

35

100011

51

110011

4

000100

20

010100

36

100100

52

110100

5

000101

21

010101

37

100101

53

110101

6

000110

22

010110

38

100110

54

110110

7

000111

23

010111

39

100111

55

110111

8

001000

24

011000

40

101000

56

111000

9

001001

25

011001

41

101001

57

111001

10

001010

26

011010

42

101010

58

111010

11

001011

27

011011

43

101011

59

111011

12

001100

28

011100

44

101100

60

111100

13

001101

29

011101

45

101101

61

111101

14

001110

30

011110

46

101110

62

111110

15

001111

31

011111

47

101111

63

111111

16

010000

32

100000

48

110000

64

1000000

(表二)

肆、研究結果與討論---三進位

一、玩家秘笈

(一)請玩家在1~26之中選個數字,不要跟莊家說。

(二)莊家將3張卡片中分成六格的格子拿給玩家看,請玩家檢查六格的格子中有沒有出現你想的數字在哪幾格卡片上,再告訴莊家有或沒有。

(三)莊家根據玩家所告知的編號,就可以猜出玩家所選擇的數字。

二、莊家秘笈

甲為莊家,乙為玩家。乙從(表三) 1~26隨便想一個數字,例如「21」,然後甲給乙看3張卡片中的6個格子,乙告訴甲他所選擇的數字出現在二A和三B的卡片中。甲沉思了一會兒就回答說:「21。」

三進位:1~26

A

B

一

1  4  7  10  13

16  19  22  25

2  5  8  11  14

17  20  23  26

二

3  4  5  12  13

14  21  22  23

6  7  8  15  16

17  24  25  26

三

9  10  11  12  13  14  15  16  17

18  19  20  21  22

23  24  25  26

(表三)

十進位數字

三進位表示

十進位數字

三進位表示

1

001

14

112

2

002

15

120

3

010

16

121

4

011

17

122

5

012

18

200

6

020

19

201

7

021

20

202

8

022

21

210

9

100

22

211

10

101

23

212

11

102

24

220

12

110

25

221

13

111

26

222

(表四)

其實,這個問題是運用三進位來設計的一個遊戲,用有、沒有來回答;若有的話,可能是 A所代表的1,也可能是B所代表的2;沒有則是零。         仔細觀察(表三)和(表四)的三張卡片,我們可以得知以下的結論: 第一張卡片的A格子,它所代表的是三進位表示法,尾數是1的數;B格子所代表的是三進位表示法,尾數全是2的數。若以上都沒有的話則是0;第二張卡片的A格子則是三進位表示法,後面數來的第二位為1的數,第二張卡片的B格子則是從三進位表示法後面數來的第二位為2的數,以此類推...。

我們可以知道十進位的數都可以用三進位來表示 (視數字之大小需用不同的位數),Ex:21可以用三進位來表示為「210」,所以21這個數字會出現在二-A、三-B中,也就是說21=3+18。而15這個數可以用三進位的三位數來表示為「120」,所以15這個數它會出現在二-B、三-A的格子中,也就是說6+9=15。因此,1~26的數都可以用三位數的三進位來表示,所以不管玩家想哪一個數,都可以在三張卡片六個格子中找到這個數,這樣具有「讀心術」的莊家就可以根據玩家所告知的卡片編號和二進位法則,讀出玩家究竟是哪一個數字。但為什麼只能猜1~26呢?因為三進位的三位數能表示的最大數就是26(十進位)【這個數字是這樣算出來的-1=26】。

三、延伸之法

(一)混濁之數

仔細觀察格子中的數,我們可以發現一-A~三-B中的數字都是井然有序的,要是比較細心的玩家可能就會發現你的把戲,但如果我們將格子的數字全打亂了,一定會使玩家困惑,讓玩家更佩服具有讀心術的莊家。我們發現其實三進位的遊戲除了猜心術這個兩人以上的遊戲之外,可以發展成一個人在玩的『迷宮遊戲』,(如圖一)。原理和猜心術相同。

(二)分身之術

(表四)中,我們只做到十進位中的26而已,但我們還可以設計出更大範圍的數字;如: 1~80(3-1=80)…等。只要握住一個原則【3-1】就可以了!

A

B

9.10.11.12.13

.14.15.16.17

18.19.20.21.22

.23.24.25.26

0           A             B

A

B

3.4.5.12.13

.14.21.22.23.

6.7.8.15.16

.17.24.25.26.

A

B

3.4.5.12.13

.14.21.22.23.

6.7.8.15.16

.17.24.25.26.

A

B

3.4.5.12.13

.14.21.22.23.

6.7.8.15.16

.17.24.25.26.

-

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

`17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

4

B

1.4.7.10.13.

16.19.22.25

2.5.8.11.14.

17..20.23.26

0  1  2     3  4  5     6  7  8     9 10  11    12 13  14   15 16  17   18 19  20  21  22 13   24 25 26

(圖一)

伍、結論

一、根據以上的討論,我們發現除了可猜出最初1~63之間的數之外。我們還可以將數字擴大到1~255,甚至可猜出更大的數,當然越大的數,在計算上會比較複雜一點。

二、研究中,發現二進位卡片的張數跟2的次方有很大的關係,當數字為1~63時,最大的數為26-1=63也就是說,至少需六張卡片。依此類推當數字為1~127時,最大的數為27-1=127,至少需七張卡片。三進位卡片的張數則跟3的次方有關係,當數字為1~26時最大的數為33-1=26,代表至少需3張卡片6個表格,才能猜出答案來。

三、研究過程中,我們發現遊戲人數除了原來的莊家與玩家兩人之外,還可以發展成一個人玩的『迷宮遊戲』模式。根據上面探討的原理,只要利用簡單的樹狀圖結構就可以設計出來。

四、除了二進位的研究之外,我們還將觸角延伸到三進位的遊戲上,發現三進位也可以利用類似的規則,得到我們想要猜出的數字。當然其他進位法也可以仿照這樣的作法,只不過會變得越來越複雜,那就失去探討的意義了。

陸、參考資料

一、李毓佩(民90)。數學的傳奇與遊戲(138~140)。國際村文庫書店有限公司。

二、張秋林(民91)。數學魔幻謎題(87~89)。林鬱文化事業有限公司。

三、勝野元薰(民91)。電影數學魔術入門(65~72)。國際村文庫書店有限公司。

四、李國賢(民92)。趣味數學‧遊戲篇(273~280)。新潮社文化事業有限公司。

根据二进制和十进制转换规则转换成游戏[xyytit]的更多相关文章

  1. 十进制浮点数转换成IEEE754标准的32浮点数的二进制格式

    参考: http://jimmygod.blog.163.com/blog/static/43511339200792605627411/ http://blog.csdn.net/archersab ...

  2. JavaScript 将十进制数转换成格式类似于 0x000100 或 #000100 的十六进制数

    将十进制数转换成格式类似于 0x000100 或 #000100 的十六进制数 1 <!DOCTYPE html> 2 <html> 3 <head> 4 < ...

  3. erlang中通过ip和子网掩码,计算地址范围 【二进制和十进制的转换】

    在程序中,难免用的二进制和十进制之间的转换.遇到一个场景,通过ip和子网掩码,计算地址范围. 而地址范围为:网络地址+1—— 广播地址 -1 .  网络地址即ip和子网掩码的与的位运算.广播地址为:网 ...

  4. Excel 中将大于511的十进制数转换成二进制

    If number < -512 or if number > 511, DEC2BIN returns the #NUM! error value. 所以不能直接使用DEC2BIN函数. ...

  5. IOS中将十进制色值转换成UIColor

    最近因项目需要,在网上找了一些代码,整合了一下,实现的效果就是将10进制的RGB色值转换IOS用的UIColor,方法还有缺陷,有待改进 UIColor *getColorFromString(NSS ...

  6. ip(点分十进制 <==> 二进制整数)之间的转换

    linux的套接字部分比较容易混乱,在这里稍微总结一下. 地址转换函数在地址的文本表达式和它们存放在套接字地址结构中的二进制值进行转换. 地址转换函数有四个:其中inet_addr 和 inet_nt ...

  7. C#图片转换成二进制流并且保存到sql server数据库

    注意:我要存储文件二进制流的列的类型是text,不是image类型. 我已经实现了从数据库中读取text类型的二进制流,,现在就是不知道怎么存进去. 我的部分关键代码: StreamReader sr ...

  8. 基于Visual C++2013拆解世界五百强面试题--题4-double转换成字符串

    请用C语言实现将double类型数据转换成字符串,再转换成double类型的数据.int类型的数据 想要完成题目中的功能,首先我们的先对系统存储double的格式有所了解. 浮点数编码转换使用的是IE ...

  9. Python二进制转十进制算法、十进转二进制算法

    二进制数转换成十进制数:二进制数从右向左每位数乘以2的次方(从0开始,从右向左依次+1),然后相加求和即可 如:0101转成十进制为:1*20+0*21+1*22+0*23 =1+0+4+0=5 算法 ...

随机推荐

  1. VMware新建虚拟机

    VMware作为一个非常便捷的虚拟机软件,学会简单的使用方法,对试验非常有帮助. 1. 打开VM,选择“创建新的虚拟机” 2. 选择典型: 3. 选择稍后选择安装源: 4. 选择Linux,并选择Li ...

  2. Linux下查看某个进程占用的CPU、内存

    1.用top命令指定固定的PID top -p 10997 查询指定进程的PID ps -ef | grep zookeeper jim 10997 1959 0 12月14 pts/2 00:00: ...

  3. pyH支持python3

    记录下,感谢大神,原地址https://www.cnblogs.com/yunmenzhe/p/6293428.html,侵删 1.修改xxx/python3.5/pyh.py权限 sudo chmo ...

  4. ulimit限制打开的文件数量

    以限制打开文件数为例. ulimit -Hn 查看硬限制. ulimit -Sn 查看软限制. ulimit -n 查看两个中更小的限制(软限制始终比硬限制低, 所以查看的是软限制) 设定规则 1.软 ...

  5. 在docker中运行kong和kong dashboard

    一.制作alpine版的kong镜像 https://github.com/Kong/docker-kong/tree/d4cec3dc46c780a916a40963309554ca81da2b46 ...

  6. Phoenix 安装完的几个简单使用

    Phoenix 安装完之后的一些简单使用: 本屌丝的运行环境是3节点集群,先启动hadoop,每个节点分别启动zookeeper,启动hbase(具体怎么启动这里就不多说了) 进入 phoenix的b ...

  7. Solr学习之二-Solr基础知识

    一 基本说明 简单来说Solr是基于Lucene的高性能的,开源的Java企业搜索服务器.Solr可以看作一个Web app,运行在tomcat或Jetty这类HTTP服务器上, 底层是一个基于Luc ...

  8. 常用数据库1 sqlserver

    知识内容: 1.SqlServer数据库概述 2.SqlServer数据库基本操作 3.Transact-SQL程序设计 一.SqlServer数据库概述 1.SqlServer系统概述 SQLSer ...

  9. springboot-dokcer

    项目就一个java文件,仅用于样例 package com.example.demo; import org.springframework.beans.factory.annotation.Valu ...

  10. UVA375

    题意: 已知等腰三角形的高H,底边长B,这时有一个内切圆C, 以内切圆C和长度为B对应的角的角平分线的交点做切线. 切线与角平分线相交,此时切线,和俩边又会出现一个小的等腰三角形,也有一个小的内切圆C ...