更改

第130行: 第130行:  
==代码实现==
 
==代码实现==
 
===Netlogo代码实现===
 
===Netlogo代码实现===
代码整体分为两部分,setup和go部分。其中setup进行环境的初始化,go进行持续运行。[[File:life game.zip|Netlogo源代码]]
+
代码整体分为两部分,'''setup'''和'''go'''部分。其中setup进行环境的初始化,go进行持续运行。[[Media:life game.zip|Netlogo源代码]]
 
====setup部分====
 
====setup部分====
 
setup的核心代码如下:
 
setup的核心代码如下:
[[File:code1.png|right|400px|thumb|setup运行初始状态]]
   
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
patches-own[living]
 
patches-own[living]
第166行: 第165行:  
end
 
end
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
运行效果如下所示:
 +
[[File:code1.png|400px|thumb|setup运行初始状态|center]]
 
====go部分====
 
====go部分====
[[File:lgss.gif|400px|thumb|right|运行过程]]
   
go按钮在创建之时就设定了持续执行,因此程序会一直进行下去。在每一轮中,程序都会遍历每个格,来判断每个格周围的存活数量。如果黑格周围存活数不等于3,其将死亡,表现为由黑格转为白格。若一个白格周围存活数正好是3,会变为黑色,即为存活状态。在棋盘上所有格子均判断完一轮后,由于设定了持续执行,程序会再次进行遍历,不断循环下去。随着迭代次数的增加,整个环境也会趋于较稳定状态。go部分的核心代码如下:
 
go按钮在创建之时就设定了持续执行,因此程序会一直进行下去。在每一轮中,程序都会遍历每个格,来判断每个格周围的存活数量。如果黑格周围存活数不等于3,其将死亡,表现为由黑格转为白格。若一个白格周围存活数正好是3,会变为黑色,即为存活状态。在棋盘上所有格子均判断完一轮后,由于设定了持续执行,程序会再次进行遍历,不断循环下去。随着迭代次数的增加,整个环境也会趋于较稳定状态。go部分的核心代码如下:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
第247行: 第247行:  
   game.update_and_plot(200)
 
   game.update_and_plot(200)
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
运行效果:
相比较Netlogo与Python实现,可以看出,python实现首先需要构建运行环境,再实现功能,最终实现的功能也并没有NetLogo丰富,建议从NetLogo实现开始。
+
[[File:lgss.gif|400px|thumb|运行过程|center]]
 +
'''总结''':相比较Netlogo与Python实现,可以看出,python实现首先需要构建运行环境,再实现功能,最终实现的功能也并没有NetLogo丰富,建议从NetLogo实现开始。
    
==音乐==
 
==音乐==
1,526

个编辑