大家今天来跟大伙儿聊聊我最近捣鼓的一个小玩意儿——“生命的游戏”。别误会,不是那种打打杀杀的电子游戏,而是一个模拟生命演化的程序。我就是觉得这名字挺酷,想看看能不能用代码整出点生命的感觉。
我先去网上扒拉一些资料,发现这个“生命的游戏”挺有来头的,是一个叫康威的数学家搞出来的。说是能模拟细胞的生死演化,听着就挺玄乎。
然后我就开始动手。第一步,得先弄个“地盘”给这些细胞住,我就用一个二维数组来表示,每个格子就是一个细胞的位置。
接下来就是定规矩。我看下,规则还挺简单的:
- 如果一个活细胞周围的活细胞少于俩,那它就“死”,估计是太孤单。
- 如果一个活细胞周围的活细胞多于仨,它也“死”,可能是挤得慌。
- 如果一个活细胞周围的活细胞正好俩或仨,那它就继续活下去,看来是找到“舒适区”。
- 如果一个死细胞周围的活细胞正好仨,那它就“复活”,这叫“繁衍”。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
把规则用代码“翻译”出来
规矩定好,就得用代码把这些规矩“翻译”出来。我用一个循环套循环的结构,遍历每个细胞,然后根据它周围的活细胞数量,判断它的下一个状态是死是活。这一步挺费劲的,因为我老是搞不清细胞之间的相对位置,调好久才弄明白。
等这些都弄好,我就迫不及待地运行程序。屏幕上啥也没有,我就随便点几个格子,让它们变成活细胞。然后,见证奇迹的时刻到!这些细胞开始按照我定的规则“演化”起来,有的“死”,有的“活”,有的还“繁衍”出新的细胞,整个屏幕就像一个微型的“生命世界”。
看着这些细胞不断地变化,我感觉自己就像个“上帝”一样,掌控着它们的生死。这种感觉,怎么说,挺奇妙的。
这只是个简单的模拟,跟真正的生命比起来差远。但通过这个小实践,我对“生命”这个概念有更直观的感受。也算是满足我这个喜欢瞎琢磨的“好奇心”。
好,今天的分享就到这儿。如果你也对这个“生命的游戏”感兴趣,不妨自己动手试试。说不定,你也能从中发现一些有趣的“生命哲学”!