当前位置: 首页 > news >正文

随州网站建设哪家优惠网站功能模块图

随州网站建设哪家优惠,网站功能模块图,今天重大新闻头条新闻,战事新闻最新康威生命游戏 康威生命游戏(Conway’s Game of Life)是康威发明的细胞自动机。 生命游戏有几个简单的规则#xff1a; 细胞有两种状态#xff0c;存活或死亡#xff0c;每个细胞以自身为中心与周围的八格细胞互动。 对于存活的细胞#xff1a; 当周围的细胞过少(2)或…康威生命游戏 康威生命游戏(Conway’s Game of Life)是康威发明的细胞自动机。 生命游戏有几个简单的规则 细胞有两种状态存活或死亡每个细胞以自身为中心与周围的八格细胞互动。 对于存活的细胞 当周围的细胞过少(2)或过多(3)时细胞死亡。周围细胞数量适中(2或3)时细胞保持存活。 对于死亡的细胞空白区域 周围有3个细胞时该区域生成细胞。模拟繁殖 参考中文维基百科-康威生命游戏 康威生命游戏通过上述几条简单的规则加上不同的初始状态就可以演化出各种复杂的模式 Python实现 由于生命游戏的规则非常简单我们可以很容易的用Python实现。 可以用二维数组表示细胞状态并根据生命游戏的规则计算下一次的细胞状态进行更新。 当规模变大时更新细胞会变得困难。可以考虑并行 下面是一个简单的实现使用pygame显示动画借助numpy操作数组。 效果如下 代码参考https://www.youtube.com/watch?vcRWg2SWuXtM 完整代码 import pygame import numpy as np import time# 定义颜色和细胞大小 COLOR_BG (10, 10, 10) # 背景黑色 COLOR_GRID (40, 40, 40) # 网格黑灰色 COLOR_DIE_NEXT (170, 170, 170) # 下一代死亡细胞灰色 COLOR_ALIVE_NEXT (255, 255, 255) # 下一代存活细胞白色 SIZE 10# 更新细胞状态 def update(screen, cells, size, with_progressFalse):更新细胞状态screen: pygame.Surface 对象cells: 细胞状态矩阵size: 细胞大小with_progress: 是否显示下一代细胞状态。有时候我们只想通过鼠标点击修改当前细胞状态而不想立即显示下一代细胞状态updated_cells np.zeros_like(cells)# 遍历每一个细胞for row, col in np.ndindex(cells.shape):# 统计周围细胞的存活数量alive np.sum(cells[row-1:row2, col-1:col2]) - cells[row, col]# 设置格子颜色如果当前细胞处于死亡状态颜色为背景色否则为存活细胞颜色color COLOR_BG if not cells[row, col] else COLOR_ALIVE_NEXT# 如果当前细胞处于存活状态if cells[row, col]:if alive 2 or alive 3:if with_progress:color COLOR_DIE_NEXTelif 2 alive 3:updated_cells[row, col] 1if with_progress:color COLOR_ALIVE_NEXT# 如果当前细胞处于死亡状态else:if alive 3:updated_cells[row, col] 1if with_progress:color COLOR_ALIVE_NEXT# 在屏幕的(row, col)位置绘制细胞。size-1是为了留出边界pygame.draw.rect(screen, color, (col*size, row*size, size-1, size-1))return updated_cellsdef main():pygame.init()screen pygame.display.set_mode((800, 600))cells np.zeros((60, 80))screen.fill(COLOR_GRID)update(screen, cells, SIZE)pygame.display.update()ruuning Falsewhile True:for event in pygame.event.get():if event.type pygame.QUIT:pygame.quit()returnif event.type pygame.KEYDOWN:# 空格键控制游戏暂停/继续if event.key pygame.K_SPACE: ruuning not ruuningupdate(screen, cells, SIZE)pygame.display.update()# 鼠标左键点击添加活细胞if pygame.mouse.get_pressed()[0]:x, y pygame.mouse.get_pos()cells[y//SIZE, x//SIZE] 1update(screen, cells, SIZE)pygame.display.update()screen.fill(COLOR_GRID)if ruuning:cells update(screen, cells, SIZE, with_progressTrue)pygame.display.update() time.sleep(0.1)if __name__ __main__:main()
http://www.w-s-a.com/news/612767/

相关文章:

  • 网站网址相对路径如何设置wordpress怎么加快网站打开速度
  • 有没有能帮人快速网站备案的机构网站建设与制作总结
  • 网站不用了怎么办苏州h5模板建站
  • 网站建设制作定制免费网络短剧
  • 建设部建造师强制注销网站h5响应式网站模板下载
  • 蛋糕网站内容规划建设网站需要多少钱济南兴田德润o厉害吗
  • 企业如何建设网站呢做网站的高手
  • 为什么打开网址都是站长工具开发一款网站需要多少钱
  • 做一个网站app需要多少钱分类信息网站建设计划
  • 怎样下载建设部网站建模培训
  • 北流网站建设制作旅游网站开发目的和目标
  • 网站公司怎么做的网站建设论文二稿
  • 网站建设服务商都有哪些html项目答辩
  • 网站上传到万网主机wordpress视频防盗链
  • 西安建设商城类网站广告设计公司文案
  • 如何建设好高校网站麻辣烫配方教授网站怎么做
  • 宁波网站建设计品牌推广策略分析
  • 网站自建设需要买什么时候开始深圳市建筑市场信息公开平台
  • 平台营销型网站建设小城镇建设的网站文献
  • 燕郊个人做网站小企业网站模板
  • 网站ip需要备案新开河街做网站公司
  • 网站定制设计方案wordpress批量传图片
  • 做外贸兼职的网站设计福州网站开发私人
  • 金华建站模板目前国内有哪些网站做家具回收
  • 个人做网站还是公众号赚钱好部门网站建设和维护
  • 系列图标设计网站推荐建商城网站
  • 中牟建设工程信息网站黑龙江 哈尔滨
  • 网站设计基本结构wap自助建论坛网站
  • 专业番禺网站建设爱做网站外国
  • 深圳罗湖网站设计公司价格制作网站的公司办什么营业执照