在线文档教程
C++
数字 | Numerics

std::bernoulli_distribution

STD:伯努利[医]分布

Defined in header
class bernoulli_distribution;(since C++11)

根据离散概率函数产生随机布尔值。...的概率true是P%28b p%29=

二次

二次

p-如果b == true

1-pb == false

std::bernoulli_distribution满足RandomNumberDistribution...

成员类型

Member typeDefinition
result_typebool
param_typethe type of the parameter set, see RandomNumberDistribution.

成员函数

(constructor)constructs new distribution (public member function)
resetresets the internal state of the distribution (public member function)

世代

运算符%28%29在分布%28公共成员函数%29中生成下一个随机数。

特征

p返回p分布参数%28生成真实的%29%28公共成员函数%29的概率

Param获取或设置分布参数对象%28公共成员函数%29

min返回最小潜在生成值%28公共成员函数%29

MAX返回最大潜在生成值%28公共成员函数%29

非会员职能

operator==operator!=compares two distribution objects (function)
operator<<operator>>performs stream input and output on pseudo-random number distribution (function template)

二次

#include <iostream> #include <iomanip> #include <string> #include <map> #include <random> int main() { std::random_device rd; std::mt19937 gen(rd() // give "true" 1/4 of the time // give "false" 3/4 of the time std::bernoulli_distribution d(0.25 std::map<bool, int> hist; for(int n=0; n<10000; ++n) { ++hist[d(gen)]; } for(auto p : hist) { std::cout << std::boolalpha << std::setw(5) << p.first << ' ' << std::string(p.second/500, '*') << '\n'; } }

二次

可能的产出:

二次

false *************** true ****

二次

外部链接

韦斯斯坦,埃里克W.“伯努利分布”来自MathWorld的一个Wolfram Web资源。

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/数值/随机/bernoulli[医]分布