用1到10 这10个数字产生20个随机数用1到10 这10个数字产生20个随机数要求每个数出现的次数 要相等如 3 5 7 9 8 1 2 4 6 9 10 7 8 10 2 1 3 5 6 4或者其他 只有一个要求,就是每个数出现的次数要相等最好
来源:学生作业帮助网 编辑:六六作业网 时间:2024/08/26 10:59:34
用1到10 这10个数字产生20个随机数用1到10 这10个数字产生20个随机数要求每个数出现的次数 要相等如 3 5 7 9 8 1 2 4 6 9 10 7 8 10 2 1 3 5 6 4或者其他 只有一个要求,就是每个数出现的次数要相等最好
用1到10 这10个数字产生20个随机数
用1到10 这10个数字产生20个随机数
要求每个数出现的次数 要相等
如 3 5 7 9 8 1 2 4 6 9 10 7 8 10 2 1 3 5 6 4
或者其他 只有一个要求,就是每个数出现的次数要相等
最好是可以通过excel函数公式实现,因为我不会用VBA
回答者:太阳鸟侦探
我要用1到10 这10个数字产生20个随机数,要求每个数出现的次数 要相等
即每个数都要出现 两次
用1到10 这10个数字产生20个随机数用1到10 这10个数字产生20个随机数要求每个数出现的次数 要相等如 3 5 7 9 8 1 2 4 6 9 10 7 8 10 2 1 3 5 6 4或者其他 只有一个要求,就是每个数出现的次数要相等最好
纯粹使用EXCEL公式,是不可能的,用VBA编个自动生成程序倒还可以.如果不想用VBA的话,只能配合手工操作了.
如果想1至10的每个数字都出来的话,直接在A列填上1至10,然后再复制一次.凑足20个数了,然后在B列输入公式,=RAND(),将A列和B列选中,按B列排序.A列的顺序就乱了,1至10的每个数正好是出现两次啊.
还有一个办法,就是先在A列输入公式=INT(1+RAND()*10),向下拖至你需要的随机数的一半,产生了大约10个随机数之后,将这几个随机数选中,复制,在原位进行数值方式的选择性粘帖(目的是去掉公式),然后将重复的去掉,剩下的只保留能被20整除的个数,如保留4个、5个、或10个,然后将这几个数复制至20个,这样得出来的随机数肯定次数相同.然后在B列输入公式=RAND(),选中AB列,按B列排序,A列的随机数就乱序了,A列数据就是你想要的.
使用randperm命令,例如,randperm(10),产生了从1到10的随机数并将它赋值给t=trandperm(10)
t =
8 2 10 7 4 3 6 9 5 1
再使用一次将它赋值给b
b=randperm(10)
b=5 6 9 1 ...
全部展开
使用randperm命令,例如,randperm(10),产生了从1到10的随机数并将它赋值给t=trandperm(10)
t =
8 2 10 7 4 3 6 9 5 1
再使用一次将它赋值给b
b=randperm(10)
b=5 6 9 1 4 2 10 8 3 7
那么tb=[t,b];
tb里存放的就是从1到10 的随机数并且出现的次数一样
收起
应该是0~9吧,EXCEL产生随机数很方便的