2012-08-01 104 views
0

我正在尝试做一些我认为是相对简单的事情,但由于某种原因,我有一段时间计算出来,所有的搜索都变成了空白。在Netlogo中比较龟的颜色

我想查询一个特定的乌龟的颜色,并检查它是否匹配另一种颜色。我想要做这样的事情:

if color targetTurtleNum = red [set target-confirmed true];

但我不断收到错误:

IF预计该输入是一个命令块,却得到了一个真/假代替。

任何想法?

回答

2

假设targetTurtleNum是“谁”你有兴趣在龟的数量,试试:

if [ color ] of turtle targetTurtleNum = red [ set target-confirmed true ] 

你所得到的错误是因为if预计两个输入:一个布尔值(要检查车况)和一个命令块(如果条件为真,该怎么办)。在你的代码版本中,if得到的第一个输入是color,第二个输入是targetTurtleNum = red,所以编译器抱怨得到一个布尔值作为第二个输入。

在此处的正确版本中,整个[ color ] of turtle targetTurtleNum = red部分是作为第一个输入计数的布尔值,[ set target-confirmed true ]是预期作为第二个输入的命令块。