成语| 古诗大全| 教学资源| 作文| 扒知识| 扒知识繁体

当前位置:首页 > 趣味生活

excel生成不重复随机数

Q1:如何在EXCEL中生成不重复随机数

在A2中输入=rand()
在B2中输入=rank(A2,A:A,0)
同时向下复制,你要多长的随机数,就向下复制多少行即可。
如果你要的随机数起始值不为1,比如要100到200内的随机数,就把第二个公式加个基数就行,如:
=rank(A2,A:A,0)+99、然后向下复制100行就是了

Q2:如何在excel 中产生不重复随机数

比如,1)在B1中输入公式 =SMALL(IF(COUNTIF($A1:A1,ROW($21:$41)),"",ROW($21:$41)),1+INT(RAND()*(22-COLUMN()))) 并且同时按住ctrl+shift+回车键,生成数组函数2)由B1向右拖动复制B1数组公式至10个数时,就OK了,大概拖至K1吧

Q3:excel随机数生成的原理是什么?

其实不光在Excel中,很多其他的程序语言都会提供随机数生成器,所以本文不会局限在Excel中,而是从算法的角度去谈随机数生成器的问题。

首先,什么是随机数呢?一个不太严格的说法,就是:后面的数,与全面的数没有什么关联。这也就引出了一个判断数列随机性的一个方法——计算线性相关性。这里不具体讨论线性相关性到底怎么计算,大体来说,就是假设在一个数列中,后面的数与前面的数有线性的函数关系,进而,可以计算这个函数的一些系数,作为相关系数。

在很多算法中,会使用「线性同余法」生成「伪随机数」。线性同余法的基本方法如下:

x = (a x + b) (mod N)

在这个算法中,先对初始值x进行线性变换,即a x + b。然后,对它取模,即后面的mod N。在这个算法中,a、b、N的值尤为重要。一个著名的随机数生成器16807生成器,其名称中的16807,对应的就是a=16807,N=2147483647。可以产生随机性还不错的生成器。

随机数生成器还有很多其他的方法,例如使用30号基础元胞自动机(ECA Rule 30)进行随机数生成的。它从一串初始序列开始,使用30号元胞自动机规则进行演化,将得到的序列再转化为数值,也可以得到非常好的随机性。这个算法被用在Mathematica的随机数生成器之中。

可以看到,这两个算法虽然不同,但都有一个「初始值」、「初始序列」。这就是所谓的「随机数种子」,是伪随机算法初始的参数,通常需要外界提供。

Q4:用excel怎么随机生成8位不重复的随机数。比如这些每一位都不重复12345678,5684239,这个就不行33665847

会用自定义函数吗?

这个自定义函数可以帮到你

在单元格中输入=sj(8)

就会得到你想要的

猜你喜欢

更多