Netlogo 两个不相关的条件-预期的命令错误

Netlogo 两个不相关的条件-预期的命令错误,netlogo,Netlogo,我试图让海龟类觅食者减少少量食物来源,如果有领头羊,则变绿;如果没有领头羊,则变橙色,将食物减少1个单位,这样第一只海龟就可以到达食物区,成为领头羊。 据我所知,由和连接的两个条件应该有效,但由于某种原因,我得到了一个“预期命令”错误。你能帮我解决这个问题吗 to look-for-food ;; turtle procedure if food > 0 and not any? leaders [ set color orange + 1 ;; pick up foo

我试图让海龟类觅食者减少少量食物来源,如果有领头羊,则变绿;如果没有领头羊,则变橙色,将食物减少1个单位,这样第一只海龟就可以到达食物区,成为领头羊。 据我所知,由和连接的两个条件应该有效,但由于某种原因,我得到了一个“预期命令”错误。你能帮我解决这个问题吗

to look-for-food  ;; turtle procedure
  if food > 0 and not any? leaders 
  [ set color orange + 1     ;; pick up food
    set food food - 1        ;; and reduce the food source
    rt 180
      stop]
    [set color green + 1
    set food food - .5
    rt 180
      stop]
end
另外,我如何将食品质量和化学成分结合起来,这原本是一个if程序,也是寻找食品的一部分?或者我需要为此编写一个新的过程吗

if (chemical >= 0.05) and (chemical < 2)
  [ uphill-chemical ]
  if food-quality > 0
  [uphill food]
如果(化学>=0.05)和(化学<2)
[上坡化学]
如果食品质量>0
[上坡食物]

您需要
ifelse
而不是
if
。如果条件为真,
if
测试运行代码块,但如果条件为假,则不执行任何操作(只是跳过它)