Netlogo 关于网络徽标泄漏和错误消息的澄清
我不太了解记者,所以我很难创造他们。然而,我认为这一个应该有效。我已经使用滑块将食品质量设置为随机,从0到1为随机值,根据我的理解,您使用let将变量设置为新的局部变量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 然而,我得到了一个
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