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]