当前位置: 首页 > 面试题库 >

在C / C ++中遵循正态分布生成随机数

邹涵畅
2023-03-14
问题内容

如何在CC ++中按照正态分布轻松生成随机数?

我不想使用Boost。

我知道Knuth详细讨论了这个问题,但是我现在没有他的书。


问题答案:

有许多方法可以从常规RNG生成高斯分布数。

该箱穆勒变换是常用的。它会正确产生具有正态分布的值。数学很简单。您生成两个(均匀)随机数,然后对它们应用公式,就得到两个正态分布的随机数。返回一个,并将另一个保存为下一个随机数请求。



 类似资料:
  • 我想用骰子做一个游戏,我需要在其中加入随机数(以模拟骰子的侧面。我知道如何在1到6之间进行)。使用 不能很好地工作,因为当我运行程序几次时,我得到的输出是: 所以我想要一个每次都会生成不同随机数的命令,而不是连续5次生成相同的随机数。是否有命令可以执行此操作?

  • 正态分布的峰度为 3。随着分布中异常值的增加,尾部变得“胖”,峰度增加到3以上。 如何在峰度大于3(最好在5-7左右)的两个数之间生成随机分布? 进口 0.01-0.10之间的随机均匀性 1.8124891901330156 0.01-0.10之间的随机正态分布 3.015004351756201 0.01-0.10之间的厚尾随机正态分布 ???

  • 本文向大家介绍C语言/C++如何生成随机数,包括了C语言/C++如何生成随机数的使用技巧和注意事项,需要的朋友参考一下 本文分享了C语言/C++如何生成随机数的具体实现方法,供大家参考,具体内容如下 C语言/C++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数。 (1) 如果你只要产生随机数而不需要设定范围的

  • 我将需要初始化一个'n'数量的类,将有一个随机值附加到他们从1到100。 我知道如何创建一个介于1和100之间的随机值,但我如何使所有的值都落在一个正态分布模式?

  • 本文向大家介绍C# 生成随机数的代码,包括了C# 生成随机数的代码的使用技巧和注意事项,需要的朋友参考一下 以上就是本文的全部内容了,希望大家能够喜欢,能够对大家学习C#有所帮助。

  • 本文向大家介绍objective-c中生成随机数的方法,包括了objective-c中生成随机数的方法的使用技巧和注意事项,需要的朋友参考一下 本文简述objective-c中生成随机数的几种常见的方法,分享给大家,希望能给大家带来一点借鉴价值。具体如下: 1)、arc4random()方法:比较精确不需要生成随即种子 使用方法如下 : 通过arc4random() 获取0到x-1之间的整数的代码