Netlogo 关于网络徽标泄漏和错误消息的澄清

Netlogo 关于网络徽标泄漏和错误消息的澄清,netlogo,Netlogo,我不太了解记者,所以我很难创造他们。然而,我认为这一个应该有效。我已经使用滑块将食品质量设置为随机,从0到1为随机值,根据我的理解,您使用let将变量设置为新的局部变量 to-report food-quality-level ifelse food-quality > 0.6 [let food-value high-quality] [let food-value low-quality] report food-quality-level end 然而,我得到了一个

我不太了解记者,所以我很难创造他们。然而,我认为这一个应该有效。我已经使用滑块将食品质量设置为随机,从0到1为随机值,根据我的理解,您使用let将变量设置为新的局部变量

to-report food-quality-level
  ifelse food-quality > 0.6
  [let food-value high-quality]
  [let food-value low-quality]
  report food-quality-level
end
然而,我得到了一个错误:没有低质量的定义。这应该如何纠正? 那么在程序中,我是否会说:

ask breed
if food-quality-level [high-quality]
[action]

这有几个问题,主要与变量名、过程名和变量值之间的混淆有关。您(某种程度上)使用“food quality level”作为过程名称和变量名称,并且在需要变量值时使用变量名称语法

我在这里所做的是添加注释,说明每一行的实际功能(而不是您的意图):

我认为您要做的是返回一些文本,对变量值是高还是低进行分类(以0.6作为断点)。如果是这样的话,您需要更像这样的东西:

to-report food-quality-level
  ifelse food-quality > 0.6      
  [let food-value "high-quality"]   ; creates the value as text
  [let food-value "low-quality"]
  report food-value                 ; returns the newly created variable
end
同一事物的更高级版本是:

to-report food-quality-level
  report ifelse-value food-quality > 0.6      
  ["high-quality"]
  ["low-quality"]
end

这里,我使用的是
ifelse值
,而不是
ifelse。。。[set…][set…]
在创建输出时构建并报告输出。

谢谢!我该如何让我的乌龟们来管理记者并据此采取行动?我知道这是不正确的,但它不应该是:```如果食物质量水平[“高质量”]面对食物-x食物-y fd 1]结束``尝试你的代码,如果你不能让它工作,问一个新问题。但是你肯定需要一个“=”在里面
to-report food-quality-level
  report ifelse-value food-quality > 0.6      
  ["high-quality"]
  ["low-quality"]
end