我有两个代理商,客户和制造商。这些海龟中的每一个都有许多变量,其中一些变量被全局定义为能够被分配给另一种类型的代理。我已经定义了这个:如果在年底,产品1的购买量高于产品2和3,那么该产品将分布在另外3家商店中。问题是循环在逻辑上不起作用。当记者不是真的时,命令中定义的内容正在发生!!
ask manufacturers [
if (product1purchases > product2purchases) and (product1purchases > product3purchases) [
set storesavailability storesavailability + 3
set Brandd 1
set color red
]
为什么当if中定义的条件不为真时,执行命令? 感谢
答案 0 :(得分:0)
他们不是。您可以通过添加打印语句来证明这一点,如下所示:
ask manufacturers [
let _cond ((product1purchases > product2purchases) and (product1purchases > product3purchases))
print (word "_cond is " _cond)
if (_cond) [
print (word "within branch, _cond is " _cond)
set storesavailability storesavailability + 3
set Brandd 1
set color red
]
]