在0到1之间生成随机数

Generate random number between 0 and 1

本文关键字:随机数 之间      更新时间:2023-10-16

简单的问题,但对我来说很难。我想在0 and 1之间生成均匀分布的随机数,该怎么做?在matlab中,我正在使用rand,in c rand()返回整数。

自C 11起,请使用std::uniform_real_distribution

也许您可以使用rand_max常数来划分随机生成的整数

这实际上取决于您需要的数字。通常,如果我不在乎它的随机程度,我只会使用rand和max_rand(我敢打赌Matlab的兰特都比C rand更好)。

但是,我所做的大部分工作都需要比C函数兰特更好的随机数生成器,而且我不需要它在密码上安全。在这种情况下,我使用Mersenne Twister课(http://www.bedaux.net/mtrand/),它似乎对模拟退火和蒙特卡洛模拟有时会更好地工作。

也有一个类别,有一种方法可以获取随机的int32和radom double(0至1之间)。