复杂形态钢结构设计培训班

首页 Dino结构笔记-公众号 【DINO爱编程】用菱形填充正六边形问题

【DINO爱编程】用菱形填充正六边形问题

【DINO爱编程】几何_用菱形填充正六边形问题

【数学原理】Tiling a Hexagon with Diamonds

图形程序的下载地址:Tiling a Hexagon with Diamonds.zip

1989 年的《美国数学月刊》(American Mathematical Monthly)上有一个貌似非常困难的数学问题:下图是由一个个小三角形组成的正六边形棋盘,现在请你用右边的三种(仅朝向不同的)菱形把整个棋盘全部摆满(图中只摆了其中一部分),证明当你摆满整个棋盘后,你所使用的每种菱形数量一定相同。
  


文章末尾提供了一个非常帅的“证明”。把每种菱形涂上一种颜色,整个图形瞬间有了立体感,看上去就成了一个个立方体在墙角堆叠起来的样子。三种菱形分别是从左侧、右侧、上方观察整个立体图形能够看到的面,它们的数目显然应该相等。


为了证明这个原理,通过Pascal进行编程生成不同的菱形布置情况,通过不同的颜色展示,你会发现这个二维铺砖问题变成了一个三维模型生成的问题,而这些模型非常像城市规划或建筑师布置塔楼与裙房方案的试算。还有一个特点就是生成的三维模型不存在上部大而下部小的情况,都是稳定的长方体布置。一个从二维问题变成三维布置的“升维”。

生成填满菱形的正六边形的编程关键在于格子的二维化,我采用二维坐标记录这些三角形格子,有纵横坐标,三种不同填充对应三种相邻关系(奇偶行情况不同),如图所示。

这个问题及其鬼斧神工般的“证明”流传甚广,深受数学家们的喜爱。《最迷人的数学趣题——一位数学名家精彩的趣题珍集》(Mathematical Puzzles: A Connoisseur’s Collection)一书的封皮上就赫然印着这个经典图形。在数学中,类似的流氓证明数不胜数,不过上面这个可能算是最经典的了。以下附上动画与相关的图案。



本文来自网络,不代表钢构人的立场,转载请注明出处。搜索工程类文章,就用钢构人网站。 https://www.ganggouren.com/2020/11/531a5fe082/
上一篇
下一篇

作者: ganggouren

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

17717621528

在线咨询: QQ交谈

邮箱: 1356745727@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部