NetLogo计数器变量增量

NetLogo计数器变量增量,netlogo,Netlogo,我的问题涉及设置一个全局计数器变量 示例代码: globals [counter] to go ;if counter / 6 is a whole number (as in is divisible by 6) ask turtles [ forward 1 ] set counter counter + 1 ;otherwise ask turtles [ right 60 forward 1 ]

我的问题涉及设置一个全局计数器变量

示例代码:

globals [counter]

to go
   ;if counter / 6 is a whole number (as in is divisible by 6)
   ask turtles
   [
      forward 1
   ]   
set counter counter + 1
   ;otherwise
   ask turtles
   [
      right 60
      forward 1
   ]
end

假设我已经相应地设置了海龟和补丁。其思想是如何让我的计数器变量在被一个数字整除时测试真/假。

您可以使用
滴答声
(报告滴答声计数器的当前值)

用于将计数器设置为零(这也会更新所有绘图)-通常在设置过程中

调用
tick
增加刻度(go程序)


并使用运算符进行模运算。

您可以使用
滴答声
(报告滴答声计数器的当前值)

用于将计数器设置为零(这也会更新所有绘图)-通常在设置过程中

调用
tick
增加刻度(go程序)


并对模使用运算符。

是否希望计数器对每个时间步递增?如果是这样,请按照bergant的建议,使用记号代替计数器。如果稍后要引入一些代码,请使用计数器,这意味着计数器仅在某些时间步上递增。我还取出了你的评论标记,这样运动就发生了

如果使用计数器:

globals [counter]

to go
  ask turtles
  [ ifelse counter mod 6 = 0
    [ forward 1 ]
    [ right 60
      forward 1 ]
  ]
  set counter counter + 1
  ...
  tick
end
如果使用记号:

to go
  ask turtles
  [ ifelse ticks mod 6 = 0
    [ forward 1 ]
    [ right 60
      forward 1 ]
  ]
  tick
end

您想让计数器增加每个时间步吗?如果是这样,请按照bergant的建议,使用记号代替计数器。如果稍后要引入一些代码,请使用计数器,这意味着计数器仅在某些时间步上递增。我还取出了你的评论标记,这样运动就发生了

如果使用计数器:

globals [counter]

to go
  ask turtles
  [ ifelse counter mod 6 = 0
    [ forward 1 ]
    [ right 60
      forward 1 ]
  ]
  set counter counter + 1
  ...
  tick
end
如果使用记号:

to go
  ask turtles
  [ ifelse ticks mod 6 = 0
    [ forward 1 ]
    [ right 60
      forward 1 ]
  ]
  tick
end

缺少
询问海龟
?是!谢谢你,尼古拉斯。我在测试的时候还写了几行,删除了太多的missing
ask turtles
?是的!谢谢你,尼古拉斯。在测试时,我有一些其他行,删除了太多