农民需要在NetLogo中离散时间/滴答之后更改值

问题描述

我正在编写一个模型,使农民季节性地更新利润并相应地种植农作物。一年中总共有630个滴答声。有两个季节。第一季将需要252滴答来完成一个作物周期。而其他季节将需要接下来的378滴答声才能完成一个作物周期。对于两个季节,农民将计算其利润。最初是252个滴答声之后,然后重置一些变量以开始下一个季节,并计算下一个378滴答声的利润。这将同时进行并持续10年或更长时间。有没有人可以帮助您编写代码。

给出以下代码。

问题:Ticks mod命令将为每个季节计算过多或不足计算利润。我想计算第1季的利润从0到252滴答,第2季的利润从253滴答到630。然后再计算第1季的利润从631到882,再从sesson2直到1260滴答。这将继续。

    breed [farmers farmer]
farmers-own [water irrigation-turn]
to setup
  clear-all
  create-farmers 5
  [ set label who
    set size 2
  ]
   ask farmer 0 [ setxy min-pxcor + 1 0 set irrigation-turn 0]
     ask farmer 1 [ setxy min-pxcor + 1 2 set irrigation-turn 1]
     ask farmer 2 [ setxy min-pxcor + 1 4 set irrigation-turn 2]
     ask farmer 3 [ setxy min-pxcor + 3 0 set irrigation-turn 3]
    ask farmer 4[ setxy min-pxcor + 3 2 set irrigation-turn 4]
    ask farmers [ set label who
     set size 2]
  reset-ticks
end
to go
 irrigate
  update-profits
 tick
end
to irrigate
    ask turtles with [irrigation-turn = (ticks mod count farmers)] 
    [ set color  red]
    ask turtles with [  irrigation-turn != (ticks mod count farmers)] 
    [set color blue]
  end
to update-profits
  if ticks mod 630 = 252 [set-season1profit]
  if ticks mod 630 = 378 [ set-season2profits]
  end

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...