2017-02-25 29 views
0

假設我有列表的NetLogo每次得到不同的隨機數從某些列表

let mylist [0 1 2 3] 

,我想從這個數組是在每一個刻度比以前的一個不同產生的隨機數。

實施例:勾選一個 - 生成0 蜱2 - 生成2 蜱3 - 生成1 蜱4 - 生成3

現在我有

let mylist [0 1 2 3] 
let x one-of mylist 

但是,返回例如兩連續剔號爲0.

任何提示?謝謝。

回答

0

一種方法是存儲上次打勾中使用的數字,將其與當前打勾中選擇的數字進行比較,如果相同,則選擇不同的數字。

globals [ 
    previous_number 
] 

to generate 

    let current_number previous_number 
    let mylist [ 0 1 2 ] 
    while [ current_number = previous_number ] [ 
    set current_number one-of mylist 
    ] 
    set previous_number current_number 
    print current_number 

end 
相關問題