2015-08-31 50 views
2

顯示器(下面)持續運行並生成一個隨機輸出列表,即使沒有滴答活動。如何停止顯示器連續運行?

問題:它應該不斷運行嗎?有沒有辦法在沒有連續隨機輸出的情況下監視界面上的列表?

代碼

to go 
    crt 100 [fd random 14 + 1] 
end 

to-report report-red-turtles 
    report [who] of turtles with [color = red] 
end 

運行:

在界面上,通過設計"Monitors automatically update several times per second"創建監控報告,紅海龜和簡單的去按鈕

回答

1

它。這是一個在大多數情況下,方便的設計,而且還可以有一些奇怪的後果(小心從來就沒有在監控代碼副作用!)

你的情況會發生什麼事是,

[who] of turtles with [color = red] 

產生各種不同的輸出它運行的時間:由of生成的列表總是隨機排列的。

爲了解決這個問題,你有兩個選擇。

  • 刪除隨機性:sort [who] of turtles with [color = red]
  • 使用全局變量(例如red-turtles),每次打勾更新一次,並將其顯示在監視器中。

這是簡單和速度之間的折衷:第一種選擇更簡單,更清潔,但計算量更大。