NetLogo增加了名义值,给出了不寻常的结果

时间:2016-11-09 12:11:47

标签: netlogo

当变量递增非常小的值(比如0.01)时,它没有按预期给出正确(精确)的结果。

寻找处理相同的建议(如果有的话)。

globals[p]
to go
set p 0
while[p <= 1]
[
    print p
    set p p + 0.01

]
end

1 个答案:

答案 0 :(得分:0)

首先阅读: http://floating-point-gui.de/

然后将间隔细分为n件,执行以下操作:

to-report subdivide [#xmin #xmax #n]
  let ps n-values (#n + 1) [? / #n]
  report map [#xmin + ? * (#xmax - #xmin)] ps
end