每种编程语言一般都有生成随机数函数(也称为方法),为了便于使用,文章总结常用编程语言的随机数函数,主要包括 C#、C++、C语言、PHP、Java、Javascript、vbscript、VB、Delphi、fortran、pascal、perl、prolog、python、ruby、MsSql、MySql、Oracle。
一、C#生成随机数函数
1、函数:Random.Next()
2、示例:
<span style="font-size:18px;">Random ran = new Random();
int n = ran.Next(80);//生成1到80的随机数
int n1 = ran.Next(80, 1000);//生成80到1000的随机数</span>
二、C++生成随机数函数
1、函数:int rand()
设置随机数种子:void srand(unsigned seed);
2、说明:
rand()函数生成的随机数严格意义上来说只能算是伪随机数,它生成随机数时需要指定一个种子。
3、示例:
<span style="font-size:18px;">#include <cstdlib>
#include <ctime>
int n;srand(time(0));//设置种子,time(0)返回当前时间
n = rand() % 100 + 1;//生成1到100的随机数</span>
三、C语言生成随机数函数
1、函数:void srand(int n)
2、说明:
要为 srand()传递一个无符号类型的参数,作为 rand() 的随机数种子。
3、示例:
<span style="font-size:18px;">srand((unsigned)time(NULL));
rand()%100 + 1; //生成1到100的随机数</span>
四、PHP生成随机数函数
1、函数:rand(min, max)
2、说明:
min 为上限,max 为上限,它们都是可选的。
3、示例:
<span style="font-size:18px;">rand();//生成任意随机数
rand(1, 100);//生成1到100的随机数</span>
五、Java生成随机数函数
1、函数:Random.nextInt()
2、示例:
1)例一
<span style="font-size:18px;">Random ran = new Random();
ran.nextInt(100);//生成100以内的随机数</span>
2)例二
<span style="font-size:18px;"> int GetRandom(int min, int max)
{
Random ran = new Random();
return ran.nextInt(max - min + 1) + min;
}</span>
调用方法:
<span style="font-size:18px;">GetRandom(100, 1000);//生成100到1000的随机数</span>
六、Javascript生成随机数函数
1、函数:Math.Random()
Math.floor(Math.Random() * (上限 - 下限 + 1) + 下限);//生成指定范围的随机数
2、说明:
Random 只能生成 0 到 1 之间的浮点数(小数)。
3、示例:
<span style="font-size:18px;"> Math.floor(Math.Random() * 200); //生成0到200的随机数
Math.floor(Math.Random() * 200 + 1); //生成1到200的随机数
Math.floor(Math.Random() * (200 - 100 + 1) + 100);//生成100到200的随机数</span>
七、Vbscript生成随机数函数
1、函数:Rnd[(number)]
int((上限 - 下限 + 1) * Rnd + 下限);//生成指定范围的随机数
2、说明:
Ran 只能生成 0 到 1 之间的浮点数(小数),number 为任意有效数值。
3、示例:
<span style="font-size:18px;"> int((100 - 10 + 1) * Rnd + 10); //生成10到100的随机数
</span>
八、VB.Net生成随机数函数
1、函数:Random.next()
2、示例:
<span style="font-size:18px;">Dim ran = New System.Random()
ran.next(100); //生成0到100的随机数
ran.next(100, 1000); //生成100到1000的随机数</span>
九、Delphi生成随机数函数
1、函数:Random()
下限 + Random(上限 - 下限 + 1);//生成指定范围的随机数
2、示例:
1)例一
<span style="font-size:18px;">Randomize;
Random(100);//生成100以内的随机数</span>
2)例二
<span style="font-size:18px;">Randomize;
10 + Random(100 - 10 + 1);//生成10到100的随机数</span>
十、fortran生成随机数函数
1、函数:random_number(x) 和 random_seed()
2、说明
random_number(x) 生成 0 到 1 之间的浮点数(小数)随机数,x 通常为向量,random_seed() 取系统时间作为种子。
3、示例:
<span style="font-size:18px;"> real :: x
call random_seed ()
call random_number (x)</span>
十一、pascal生成随机数函数
1、函数:Random(N)
2、说明
Random() 生成 0 到 1 之间的随机数,Random(N) 生成 [0,N)之间的随机数,N 为任意有效整数。
3、示例:
<span style="font-size:18px;"> randomize;
ran: = trunc(Random * 90) + 10;//生成100以内的随机数</span>
十二、perl生成随机数函数
1、函数:rand($interger) 和 srand()
2、说明
rand() 生成 0 到 1 之间的随机数,Random($interger) 生成 0 到 $interger 之间的随机数,$interger 为任意有效整数。
3、示例:
<span style="font-size:18px;">srand;
int(rand(100)) + 1; //生成1到100的随机数</span>
十三、python生成随机数函数
1、函数:
range(start, stop, step):返回 [start, stop) 之间的所有整数,step 为步长,其值不能为0;
randint(start, stop):生成 start 和 stop 之间的随机整数;
randrange(start, stop, step):跟 range()相似;
uniform(start, stop):生成 [start, stop) 之间的浮点数随机数;
Random():跟 uniform() 相似,但下限恒等于0.0,上限恒等于1.0;
choice():随机返回给定序列中的一个元素。
2、示例:
range(4) #[1, 2, 3]
range(1, 4, 2) #[1, 3]
import Random
Random.randint(10, 100)
Random.randrange(10, 100)
十四、ruby生成随机数函数
1、函数:rand(n)
2、说明
rand() 生成 0 到 1 之间的随机数;若 n 为整数,则生成 0 到 n 之间的随机数;若 n 为十六进制,则生成十六进制随机数。
3、示例:
puts rand #生成 0 到 1 之间的随机数
rand(100) #生成 0 到 100 之间的随机数
puts rand(0x5b) #生成十六进制的随机数
十五、MsSql 和 MySql 生成随机数函数
1、函数:rand()
2、说明
rand() 生成 0 到 1 之间的随机数,生成随机数跟 Javascript 很相似,可以参考它。
3、示例:
floor(rand() * 100)--生成 0 到 99 之间的随机数
floor(rand() * 100 + 1)--生成 1 到 100 之间的随机数
十六、Oracle生成随机数函数
1、函数:DBMS_RANDOM.VALUE(low, high)
2、说明
DBMS_RANDOM.VALUE() 生成 (0,1) 之间的随机数,精度 38 位;DBMS_RANDOM.VALUE(low, high) 生成 [low,high) 之间的随机数。
3、示例:
DBMS_RANDOM.VALUE()--生成 0 到 1 之间的随机数
DBMS_RANDOM.VALUE(10, 100)--生成 10 到 100 之间的随机数