首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::bernoulli_distribution

Defined in header <random>

class bernoulli_distribution;

(since C++11)

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

二次

二次

p-如果b == true

1-pb == false

std::bernoulli_distribution满足RandomNumberDistribution...

成员类型

Member type

Definition

result_type

bool

param_type

the type of the parameter set, see RandomNumberDistribution.

成员函数

(constructor)

constructs new distribution (public member function)

reset

resets 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)

二次

代码语言:javascript
复制
#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';
    }
}

二次

可能的产出:

二次

代码语言:javascript
复制
false ***************
 true ****

二次

外部链接

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

代码语言:txt
复制
 © cppreference.com

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

扫码关注腾讯云开发者

领取腾讯云代金券