Netlogo 一旦海龟变量达到某个最大值,如何停止增加它?
您好,我需要有关NetLogo变量设置的帮助 我有海龟,它们拥有的属性值范围很广,即最小值和最大值Netlogo 一旦海龟变量达到某个最大值,如何停止增加它?,netlogo,Netlogo,您好,我需要有关NetLogo变量设置的帮助 我有海龟,它们拥有的属性值范围很广,即最小值和最大值 turtles-own [weight history state-turtles run-duration ek tt cu sp] to setup-turtles create- NMAs 2 [ set ek 8 ; range 8 to 9 set tt 5 ;range 5 to 7 set cu 3 ; range 3 to 5 set sp 4 ; rang
turtles-own [weight history state-turtles run-duration ek tt cu sp]
to setup-turtles
create- NMAs 2 [
set ek 8 ; range 8 to 9
set tt 5 ;range 5 to 7
set cu 3 ; range 3 to 5
set sp 4 ; range 4 to 7
]
create- NBSs 2 [
set ek 3 ; range 3 to 5
set tt 4 ; range 4 to 7
set cu 3 ; range 3 to 4
set sp 3 ; range 3 to 6
]
to setup-patches
ask patches [ let projects random 4
;setup colours
]
End
to go
tick
ask turtles [
......
]
search-patch
if .....
]
End
to search-patch
if ( [ pcolor ] of patch-here = brown ) [
ifelse (;statement) [
update-turtles
] [
action-turtles
]
]
end
to update-turtles
if pcolor = yellow [
set ek ek + 0.1
set tt tt + 0.5
set cu cu + 0.1
set sp sp + 1 ]
if pcolor = green [
set ek ......
数字一直在增加,我想为每个属性设置限制(范围),如设置turtles中所示。谢谢
turtles-own [... ek-max tt-max cu-max sp-max ...]
to setup
...
create-NMAs 2 [
set ek 8
set ek-max 9
...
]
...
end
to update-turtles
...
if ek + 0.1 <= ek-max [ set ek ek + 0.1 ]
if tt + 0.5 <= tt-max [ set tt tt + 0.5 ]
if cu + 0.1 <= cu-max [ set cu cu + 0.1 ]
if sp + 1 <= sp-max [ set sp sp + 1 ]
...
end
设置
...
创建NMAs 2[
第8组
设置ek最大值为9
...
]
...
结束
更新海龟
...
如果ek+0.1,我很难理解你的问题。你能一步一步地再解释一遍你到底想发生什么吗?(您可以编辑您的问题以进行改进。)我已更新了问题。非常感谢你的回答,它现在运行得很好