我正在编写一个游戏,其中包括执行一个函数,该函数从列表中随机选取一个人,并从其他列表中选择一个随机主题。更换示例,避免重复
的主要原则是: - 您可以运行的代码,你希望所有的时间,但代码不能给出2次同一个人
就目前我所得到的是:
# Lists
people = list('john','peter','alex')
topic = list('Finance','Ensurance','Retail')
Start<-function(people, topic){
arg1 = sample(people,1)
arg2 = sample(topic,1)
return (list(arg1,arg2))
}
问题的症结在于:确保每次运行“开始”功能时,人员p和p + 1都不相同。所以,结果可能是这样的:
约翰,金融/彼得,金融/约翰,零售/亚历克斯,金融 但从来没有:约翰,金融/约翰,金融。
你的意思是说他们永远不能再被选中,或者连续两次都不会被选中? –
你的要求到底是什么还不清楚。您可以存储先前的绘图。或者你可以在开始时每个列表使用'sample'来洗牌,然后跟踪并增加当前的索引。所以我假设'Start()'只能被调用三次? – MrFlick
我的意思是,这个游戏可能会随机选择一个人写一个话题到博客中(例如),所以话题可以重复,但不是人。 – PeCaDe