
'''''如果你是随机选50个不重复的数则可用下面这个程序:
Option Base 1
Private Sub Form_Click()
Dim A(), i%, k%, Jk%
ReDim A(50)
For i = 1 To 50
A(i) = i
Next
Choose:
k = UBound(A) ''''''K为当前还剩下未被抽取的数
Jk = Int(Rnd (k) + 1) ''''在剩余数中随机抽取第JK个数
Print A(Jk) ''''''''''''''''A(JK)就是随机抽到的数,
If k = 1 Then Exit Sub '''''如果是最后一个数则退出
For j = Jk To k - 1
A(j) = A(j + 1) ''''''从抽到的那个数开始,让前一个数等于后一个数,将抽到的那个数删除
Next j
ReDim Preserve A(k - 1)
GoTo Choose '''''继续随机抽选
End Sub
要取得[a,b)之间的随机整数,使用(rand() % (b-a))+ a 或者(rand() (b-a)) / RAND_MAX + a。
假设我们要取得1~10之间的随机整数:
#include <stdlibh>
#include <timeh>
#include <iostreamh>
void main()
{
int ran_num;
srand((unsigned)time(NULL));
for(int i=0;i<100;i++)
{
ran_num = 10rand() / (RAND_MAX)+1;
cout<<ran_num<<"\n";
}
}
要想了解更多,请参见我的博客>
public class RandomTest{
public static void main(String[] args){
int i=Mathrandom();//random()会自动产生一个00-10的双精度随机数
Systemoutprintln(i);//输出
i=Mathrandom()1000;//产生0-1000的双精度随机数
Systemoutprintln(i);
int b=(int)(Mathrandom()1000);//产生0-1000的整数随机数
Systemoutprintln(b);
}
}import javautilrandom
public class RandomTest{
public static void main(String[] args){
Random random=new Random();//创建random对象
int intNumber=randomnextInt();//获取一个整型数
float floatNumber=randomnextFloat();//获取一个浮点数(0-1)
double doubleNumber=randomnextDouble();//获取双精度数(0-1)
boolean booleanNumber=randomnextBoolean();//获取boolean数
Systemoutprintln("intNumber:"+intNumber);
Systemoutprintln("floatNumber:"+floatNumber);
Systemoutprintln("doubleNumber:"+doubleNumber);
Systemoutprintln("booleanNumber:"+booleanNumber);
}
}
以上就是关于vb抽取1~55随机数【班级抽签用】全部的内容,包括:vb抽取1~55随机数【班级抽签用】、用C++编写一个程序:如何让电脑从1到10中随机抽取一个数字 并最终输出该数字。、用java编写程序,从1到100随机抽取一个数,这个数既不能被2整除,也不能被3整除等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)