NetLogo:如何在乌龟出生后立即交替特定标志?
NetLogo: How to alternate specific flags immediately after the birth of the turtle?
如何在海龟出生后立即交替特定标志?
如何交替标记使用原始单元格 (0 0) 创建的海龟?
例如,第一个出生的乌龟是 flag 1,下一个要出生的乌龟是 flag 2,下一个要出生的乌龟是 flag 1,下一个要出生的乌龟是 flag 2 ...等等。
(例如,ID 号 1 = 标志 1,ID 号 2 = 标志 2,ID 号 3 = 标志 1,ID 号 4 = 标志 2,ID 号 5 = 标志 1,ID 号 6 = 标志 2,...)
我写了下面的示例代码,但还没有完成,没有想法:
globals [ idnumber flag1 flag2 ]
to setup
clear-all
reset-ticks
set idnumber who
end
to go
ask patch 0 0 [
sprout 1
;Perhaps we could put a if, or ifelse conditional statement here to construct the flag1 and flag2
flagging syntax?
]
end
如果你想严格交替(并且中间没有创建其他海龟)那么最简单的方法是使用 mod
:
ifelse who mod 2 = 0 [set flag 1][set flag 2]
这也可以是set flag1 true
或者你喜欢的任何代码,关键是mod
。
如果你只是想以相等的概率在它们之间随机选择,那么one-of
可能会有用:
set flag one-of [1 2]
如何在海龟出生后立即交替特定标志?
如何交替标记使用原始单元格 (0 0) 创建的海龟? 例如,第一个出生的乌龟是 flag 1,下一个要出生的乌龟是 flag 2,下一个要出生的乌龟是 flag 1,下一个要出生的乌龟是 flag 2 ...等等。 (例如,ID 号 1 = 标志 1,ID 号 2 = 标志 2,ID 号 3 = 标志 1,ID 号 4 = 标志 2,ID 号 5 = 标志 1,ID 号 6 = 标志 2,...)
我写了下面的示例代码,但还没有完成,没有想法:
globals [ idnumber flag1 flag2 ]
to setup
clear-all
reset-ticks
set idnumber who
end
to go
ask patch 0 0 [
sprout 1
;Perhaps we could put a if, or ifelse conditional statement here to construct the flag1 and flag2
flagging syntax?
]
end
如果你想严格交替(并且中间没有创建其他海龟)那么最简单的方法是使用 mod
:
ifelse who mod 2 = 0 [set flag 1][set flag 2]
这也可以是set flag1 true
或者你喜欢的任何代码,关键是mod
。
如果你只是想以相等的概率在它们之间随机选择,那么one-of
可能会有用:
set flag one-of [1 2]