的NetLogo每次得到不同的随机数从某些列表
问题描述:
假设我有列表的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.
任何提示?谢谢。
答
一种方法是存储上次打勾中使用的数字,将其与当前打勾中选择的数字进行比较,如果相同,则选择不同的数字。
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