NetLogo:计算百分比

时间:2014-04-15 13:57:44

标签: variables procedure netlogo

我试图计算事件发生的几率。我试图通过创建两个全局变量来实现这一点("成功""总")。每当事件发生时,"成功"和"总计"变量增加,当事件没有发生时(另一个事件发生)只有"总和"增加。

因此,为了获得这种情况发生的百分比,我需要划分"成功"变量由"总数"并且乘以100.我还想在用户界面的监视器中显示该值,因此我创建了另一个变量"百分比"分配计算,以便可以在监视器中声明。

我已经创建了一个名为calculate的过程并在go过程中调用它,但是我不确定正确的语法来获得我需要的工作。我添加了一些伪代码,因为我认为它应该可行

to calculate
 set percentage (count success)/(count total)
end

1 个答案:

答案 0 :(得分:3)

你真的很亲密。 count计算代理集中的代理数。由于successtotal只是数字,因此您不希望这样。您正在寻找的基本表达是100 * success / total。接下来,实际上不需要percentage全局变量。相反,你可以成为一名记者:

to-report percent-success
  report 100 * success / total
end

然后,在监视器的“记者”字段中,您只需要放置percent-success。这个字段实际上甚至可以采用记者表达式,所以你可以将100 * success / total直接放在那里,尽管使用上面的报告程序程序有点清洁。此外,您可能希望将“小数位数”字段设置为更小的值。