随机抽取数字代码(数字随机抽取器)
admin 发布:2022-12-19 19:37 169
本篇文章给大家谈谈随机抽取数字代码,以及数字随机抽取器对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
excel如何实现随机抽取且不重复
方法一:公式法
1、我们以生成1-10范围内的随机数字为例,讲述方法。
首先,在A2单元格中输入公式:=SMALL(IF(COUNTIF($A$1:A1,ROW($1:$11))=0,ROW($1:$11)),INT(RAND()*(11-ROW(A1))+1))
然后按下Ctrl+Shift+Enter三键结束数组公式。
2、然后,下拉填充公式到A12单元格,也就是填充11个单元格,为什么要填充11个呢,我们明明只要10个数字?这是因为,最后一个数字是不会变化的,所以呢,要生成10个随机数,需要填充11个单元格,同样的生成11个随机数的话,要填充12个单元格,除此之外,公式中的11还要改成12。
3、生成随机数后,每按下一次F9(或者其他单元格进行一次计算),随机数就会刷新一次,重新生成一组随机数,要注意喽!
4、好了,一组不重复的随机数字生成了,现在我们回头看看这个公式是怎么实现的吧。首先看Small函数的第一个参数,也就是数字区域,这里是利用if和Countif函数来实现此单元格上面的单元格区域,是否有当前单元格的数字,如果有,就返回False,而如果没有就返回这个数字,从而生成一组由上面单元格没有的数字和Flase组成的序列,下图是按F9得到的结果:
5、Small函数的第二个参数,也就是从这个序列中取第几个最小值,在得到的数字中,利用随机函数rand和row函数,实现在这有个个数中随机抽取一个数字,从而得到排序中这个数字顺序的一个数字。通过这样一个数组公式,就实现了生成一组不重复的随机数字啦。
方法二:VBA法
1、VBA功能强大,可以利用很多算法实现随机数。这里介绍一种简单的办法。首先在Excel中按下Alt+F11,打开VBE界面,双击要生成随机数的工作表,在右侧空白处需要输入代码。
输入代码如下:
Sub m()
Range("A:A").ClearContents'这里是A列,根据需要修改
For i = 1 To 10'这里是10个数字,根据需要修改
kkk:
Randomize
x = Int(Rnd * 10) + 1
If Application.CountIf(Range("A:A"), x) = 0 Then
Cells(i, 1) = x
Else
GoTo kkk
End If
Next i
End Sub
2、代码原理很简单,就是随机生成数字,如果A列中有了这个数字,就返回再次随机生成,一直到没有这个数字为止;利用循环生成制定数量的数字。
3、按下F5执行代码,就看到在对应的Sheet中的对应列,生成了一组随机的不重复的数字。
请问用java从1-33个整数中随机抽取6个数字 且不重复 1-16随机抽取一个数,给小球?
完整代码为:
public class Main {
public static void main(String[] args) {
int index = 1;
int[] redBalls = new int[6];
Random random = new Random();
boolean getMoreRed = true;
boolean getAgain;
System.out.println("开始抽取红球!");
while (getMoreRed) {
getAgain = false;
int red = random.nextInt(36) + 1;
System.out.print("本次抽取到的红球为:[" + red + "]!");
for (int i = 0; i index; i++) {
if (redBalls[i] == red) {
System.out.print("重复抽取,将重新抽取红球");
getAgain = true;
break;
}
}
System.out.println("");
if (getAgain){
continue;
}
redBalls[index - 1] = red;
index++;
getMoreRed = index 7;
}
System.out.println("抽取到的红球为:");
Arrays.sort(redBalls);
for (int redBall : redBalls) {
System.out.print(redBall + " ");
}
System.out.println("\n\n开始抽取蓝球!");
System.out.println("本次抽取到的蓝球为:[" + (random.nextInt(16) + 1) + "]!");
}
}
运行结果:
普通抽取:
重复时抽取:
急 VB随机抽取数字代码
在窗体上增加两个Command1和Command2,一个文本框Text1和一个时间控件Timer1,代码如下:Private Sub Command1_Click() '开始抽奖
If Command1.Caption = "开始" Then '判断按钮是否为开始
Command1.Caption = "停止" '是则更改按钮为停止
Timer1.Enabled = True '开启时钟
Else
If Command1.Caption = "停止" Then '否则判断按钮是否是停止
Timer1.Enabled = False '是则停止时间控件
Command1.Caption = "开始" '将Command1更改成开始
End If
End If
End SubPrivate Sub Command2_Click() '清空文本框内容
Text1.Text = ""
End SubPrivate Sub Form_Load() '窗体加载事件对一些控件进行初始化
Text1.Text = "" '清空文本框内容
Timer1.Interval = 10 '设置时间控件周期为10ms
Timer1.Enabled = False '默认时间控件不开启
Command1.Caption = "开始" '默认Command1的名称为开始
Command2.Caption = "清空" '默认Command1的名称为清空End Sub Private Sub Timer1_Timer() '时间控件事件执行滚动随机提取数据
Text1.Text = Int((42 - 1 + 1) * Rnd + 1) '随机数读取方法:Int((upperbound(上限) - lowerbound(下限) + 1) * Rnd + lowerbound)
End Sub
随机抽取数字代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于数字随机抽取器、随机抽取数字代码的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-03点击图片翻页代码(图片自动翻页)[20240503更新]
- 05-03matlab锐化代码(matlab自己编写锐化函数)[20240503更新]
- 05-03输入日期显示是否的代码(显示当前时间和日期的代码)[20240503更新]
- 05-03移动省份代码(移动归属省代码)[20240503更新]
- 05-03图书管理系统的图书添加php代码(图书管理系统的图书添加php代码)[20240503更新]
- 05-03上下浮动图片代码(向上浮动代码)[20240503更新]
- 05-03排行js代码(js百大榜单)[20240503更新]
- 05-03卷积神经网络matlab代码(卷积神经网络MATLAB)[20240503更新]
- 05-03asp数字验证码代码(asp验证码代码)[20240503更新]
- 05-03分类下拉代码(分类下拉代码怎么输入)[20240503更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接