Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
NetLogo monitor reporter won出现问题';不显示正确的值_Netlogo - Fatal编程技术网

NetLogo monitor reporter won出现问题';不显示正确的值

NetLogo monitor reporter won出现问题';不显示正确的值,netlogo,Netlogo,所以我想编程一个监视器,如果任何补丁变成蓝色,它会上升+1 我的班长的记者是: ifelse值是否有?补丁[ [银行]补丁] [0] 代码是: 数贝沃恩巴 询问补丁[ 如果bewohnbar?=真[设置银行+1] ] 但所有显示器显示的是[000233900000…] 所以它只是显示随机的数字串。 我在另一个问题中解决的另一个问题是, 我有另一个带有money变量的监视器,它可以工作,我想以这种方式在两者之间创建链接: ask patches[ let Bank count (patch

所以我想编程一个监视器,如果任何补丁变成蓝色,它会上升+1

我的班长的记者是:

ifelse值是否有?补丁[
[银行]补丁]
[0]
代码是:
数贝沃恩巴
询问补丁[
如果bewohnbar?=真[设置银行+1]
]

但所有显示器显示的是[000233900000…] 所以它只是显示随机的数字串。 我在另一个问题中解决的另一个问题是, 我有另一个带有money变量的监视器,它可以工作,我想以这种方式在两者之间创建链接:

ask patches[
    let Bank count (patches with [pcolor = blue])
     if-else (pcolor = blue) [
     if (Bank + 1)  [set money money - 100]
      ]
    [ if Bank Bank - 1 [set money money + 50]
     ]
      ]

当的
应用于一个代理集时,例如,
补丁
,它将在括号中为集合中的每个代理提供变量或报告器的值列表。由于代理是随机查询的,因此列表将按随机顺序排列。因此

ifelse-value any? patches[
[bank] of patches]
[0]
将以随机顺序向您提供每个修补程序报告的
bank
值的列表。(因为总是有补丁,
any?补丁
总是正确的,所以您所写的与

[bank] of patches]
)。由于您显示的列表对于不同的修补程序具有不同的值,因此我假设
bank
是一个
patch-only
变量,而不是全局值。(如果是后者,则列表中每个补丁的值都相同。)

那么,问题是
bank
应该代表什么。根据您提供的代码,如果
bewohnbar?
为真,则每个修补程序都会增加其
bank
的值。(顺便说一下,条件
if-bewohnbar?=true[
与简单的
if-bewohnbar?[
if
需要一个逻辑值或表达式,并且
bewohnbar?
已经是一个逻辑值或表达式。)
bewohnbar?
与修补程序变蓝有关吗?如果是这样,
bank
在每次调用
count bewohnbar
时递增,因此它是正值,但对于任何变蓝的修补程序,它可能大于1,这就是为什么列表中的值对于不同的修补程序是不同的。它们代表h补丁变为蓝色的勾号数(如果每个勾号调用一次
count bewohnbar

如果一个记者计算了有多少个补丁的
bewohnbar?
是(或曾经是)真的,那么他将是

count filter [v -> v > 0] [bank] of patches
filter
获取
bank
值的列表,只保留大于零的值,并对它们进行计数。但是,一种更简单的方法是计算
bewohnbar?
为真的补丁数

count patches with [bewohnbar?]