主观题:生命游戏
剑桥大学约翰·何顿·康威(John Horton Conway, 1937--2020)教授设计了一个叫做“生命游戏”的计算机程序。

生命游戏是一个二维网格游戏,这个网格中每个方格居住着一个活着或死了的细胞。一个细胞在下一个时刻的生死取决于相邻 8 个方格中活着或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因为孤单而死去。
游戏开始时,每个细胞随机地设定为“生”或“死”之一的某个状态。然后,根据某种规则,计算出下一代每个细胞的状态,画出下一代细胞的生死分布图。
生命游戏的规则如下:
1) 若一个存活细胞周围低于 2 个邻居,则该细胞会死亡(模拟生命数量稀少)。
2) 若一个存活细胞周围多于 3 个邻居,则该细胞会死亡(模拟生命数量过多)。
3) 若一个死亡细胞周围有 3 个邻居,则该细胞变成存活状态(模拟繁殖)。
4) 否则,该细胞保持死或活的状态不变。
请编程模拟生命游戏。
答案:

生命游戏是一个二维网格游戏,这个网格中每个方格居住着一个活着或死了的细胞。一个细胞在下一个时刻的生死取决于相邻 8 个方格中活着或死了的细胞的数量。如果相邻方格活着的细胞数量过多,这个细胞会因为资源匮乏而在下一个时刻死去;相反,如果周围活细胞过少,这个细胞会因为孤单而死去。
游戏开始时,每个细胞随机地设定为“生”或“死”之一的某个状态。然后,根据某种规则,计算出下一代每个细胞的状态,画出下一代细胞的生死分布图。
生命游戏的规则如下:
1) 若一个存活细胞周围低于 2 个邻居,则该细胞会死亡(模拟生命数量稀少)。
2) 若一个存活细胞周围多于 3 个邻居,则该细胞会死亡(模拟生命数量过多)。
3) 若一个死亡细胞周围有 3 个邻居,则该细胞变成存活状态(模拟繁殖)。
4) 否则,该细胞保持死或活的状态不变。
请编程模拟生命游戏。
答案: