📜  随机数 (1)

📅  最后修改于: 2023-12-03 15:12:49.378000             🧑  作者: Mango

随机数

随机数是计算机生成的一组随机数字或符号。在编程中,随机数常被用来做模拟测试、密码生成、加密等方面。

伪随机数与真随机数

计算机生成的随机数通常是伪随机数。伪随机数是通过算法计算得到的数列,由于计算机算法的确定性特性,伪随机数虽然看起来是乱序的,但却是可以预测的。真随机数则是由真正的随机物理过程生成的数列,例如放射性衰变、环境温度等。由于真随机数是完全随机的,因此在密码学等安全领域中常被用到。

生成随机数的方法
C/C++程序

在C/C++中,可以使用rand()函数生成伪随机数。该函数返回一个介于0和RAND_MAX(通常为32767)之间的随机整数。可以通过设置seed函数的参数来指定随机数的初始值,例如:

#include <stdlib.h>
#include <time.h>

int main() {
    int i, j;
    srand(time(NULL));  // 设置随机数种子为当前时间
    for (i = 0; i < 10; i++) {
        j = rand();
        printf("%d\n", j);
    }
    return 0;
}

上述代码中,srand(time(NULL))函数用于设置随机数种子为当前时间,保证每次运行程序生成的随机数序列都是不同的。

Python程序

在Python中,可以使用random模块生成伪随机数。该模块提供了多种生成随机数的函数,例如:

import random

random.seed()  # 设置随机数种子为当前时间
for i in range(10):
    j = random.randint(1, 100)  # 生成一个介于1和100之间的随机整数
    print(j)

上述代码中,random.seed()函数用于设置随机数种子为当前时间,保证每次运行程序生成的随机数序列都是不同的。random.randint(1, 100)函数用于生成一个介于1和100之间的随机整数。

JavaScript程序

在JavaScript中,可以使用Math.random()函数生成伪随机数。该函数返回一个介于0和1之间的随机数。可以通过对生成的随机数进行运算,得到想要的随机数。例如:

for (var i = 0; i < 10; i++) {
    var j = Math.floor(Math.random() * 100) + 1;  // 生成一个介于1和100之间的随机整数
    console.log(j);
}

上述代码中,Math.floor()函数用于向下取整,Math.random() * 100函数生成一个0到99之间的随机数,加1后得到一个1到100之间的随机整数。

结语

随机数在计算机编程中发挥着重要的作用,掌握生成随机数的方法是非常有必要的。不同的编程语言生成随机数的方法也略有不同,需要根据实际需求选择合适的语言和方法。