更具体地说,我的问题是,如果时间无限,
int(rand()*1000)
最终会命中0到999之间的每个数字吗?对于10^4、10^5等呢?我猜一旦你达到内存大小,就肯定会出现错误,也就是说,如果rand()返回一个浮点数,它在内存中占据n个位,你不可能命中超过n个不同的整数,因此一旦你达到rand()*(2^n+1)
,就肯定会错过一些数。
rand()
函数;它可能因语言而异,对于某些语言可能因实现而异。请更精确地说明您所询问的语言和平台。 - Stephen Canonrand()
设施是什么吗?编程语言、库等等... 一般来说,你是对的,可能的输出数量不能超过可能的输入数量。 - rlibby