Random($XX,$xx,1)为什么随机数总重复呢?
用random做随机取数,采用的是IniRead读取最小数和最大数的参数,但总是重复几个数,不能最大随机,如果直接添入random的最小数和最大数就可以,不知什么原因,哪位大位回复下,谢谢啦! random本来出来的就是伪随机 回复 2# netegg能不能讲解一下伪随机的局限性 取不重复的随机数,我一般用字典过滤,效果很好。 http://baike.baidu.com/view/1127.htm 回复 4# kevinch
能简单说下字典过滤吗?之前没听说过,谢谢! #include <array.au3>
$o_Dic=objcreate("scripting.dictionary");创建字典项目
Do
$i_N=int(random(10,50))
$o_Dic(string($i_N))="" ;把得到的值作为字典的key添加到字典中,如果重复的不会改变
until $o_Dic.count=20;当字典的keys达到20个时跳出循环
_ArrayDisplay($o_Dic.keys);显示一下结果(与后面注释的等价,因为返回的是个集合)
;$a_Arr=$o_Dic.keys
;_ArrayDisplay($a_Arr)给段代码,稍稍注释了一下,看楼主能看明白不。 你真是大好人,谢谢,我研究研究!~~ 回复 7# kevinch
这有必要用字典吗,做个动态数组的事 回复kevinch
这有必要用字典吗,做个动态数组的事
netegg 发表于 2011-3-24 20:13 http://www.autoitx.com/images/common/back.gif
数组不循环能判断出来重复吗?少的话无所谓,多了的话用循环就太慢了吧。而字典是不需要循环的,多少都无所谓,不是很好吗? 要多次用Random函数生成‘不同的’随机数,首先要调用SRandom函数生成种子。具体的你可以谷歌一下
页:
[1]