STD::BINOMIAL_DISTRIBUTION(3cxx)
π NAME
std::binomial_distribution< _IntType > β a discrete binomial random number distribution. This is the 3cxx manual page, bestie, so welcome to the binomial distribution group chat π
β¨
β¨ SYNOPSIS
#include <random>
π Classes
struct param_type
π¦ Public Types
typedef _IntType result_type
πΈ Public Member Functions
binomial_distribution (_IntType __t, double __p=0.5)binomial_distribution (const param_type &__p)template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng)template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng, const param_type &__p)template<typename _UniformRandomNumberGenerator > void __generate (result_type *__f, result_type *__t, _UniformRandomNumberGenerator &__urng, const param_type &__p)result_type max () constβ Returns the least upper bound value of the distribution.result_type min () constβ Returns the greatest lower bound value of the distribution.template<typename _UniformRandomNumberGenerator > result_type operator() (_UniformRandomNumberGenerator &__urng)β Generating functions.template<typename _UniformRandomNumberGenerator > result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__p)double p () constβ Returns the distribution p parameter.param_type param () constβ Returns the parameter set of the distribution.void param (const param_type &__param)β Sets the parameter set of the distribution.void reset ()β Resets the distribution state._IntType t () constβ Returns the distribution t parameter.
π Friends
template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::binomial_distribution< _IntType1 > &__x)β Inserts a binomial_distribution random number distribution__xinto the output stream__os.bool operator== (const binomial_distribution &__d1, const binomial_distribution &__d2)β Return true if two binomial distributions have the same parameters and the sequences that would be generated are equal.template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::binomial_distribution< _IntType1 > &__x)β Extracts a binomial_distribution random number distribution__xfrom the input stream__is.
π Detailed Description
The class signature is:
template<typename _IntType = int>
class std::binomial_distribution< _IntType >
It's "A discrete binomial random number distribution." π
The raw Doxygen text has a little typo-gremlin moment: it literally says o, then mhe formula, and thereβs a stray } in there. Not me, bestie, Iβm just reporting the lore π«
The formula for the binomial probability density function is:
$p(i|t,p) = {} p^i (1 - p)^{t - i}$
where $t$ and $p$ are the parameters of the distribution.
Since: C++11 β¨
π§ Member Typedef Documentation
template<typename _IntType = int> typedef _IntType std::binomial_distribution< _IntType >::result_type
The type of the range of the distribution. Slay π
π₯ Member Function Documentation
π max
template<typename _IntType = int> result_type std::binomial_distribution< _IntType >::max () const [inline]
Returns the least upper bound value of the distribution.
π min
template<typename _IntType = int> result_type std::binomial_distribution< _IntType >::min () const [inline]
Returns the greatest lower bound value of the distribution.
π operator() β one-argument version
template<typename _IntType = int> template<typename _UniformRandomNumberGenerator > result_type std::binomial_distribution< _IntType >::operator() (_UniformRandomNumberGenerator & __urng) [inline]
Generating functions.
References std::binomial_distribution< _IntType >::operator()().
Referenced by std::binomial_distribution< _IntType >::operator()().
π operator() β two-argument version
template<typename _IntType > template<typename _UniformRandomNumberGenerator > binomial_distribution< _IntType >::result_type std::binomial_distribution< _IntType >::operator() (_UniformRandomNumberGenerator & __urng, const param_type & __param)
A rejection algorithm when t * p >= 8 and a simple waiting time method - the second in the referenced book - otherwise. NB: The former is available only if _GLIBCXX_USE_C99_MATH_FUNCS is defined.
Reference: Devroye, L. Non-Uniform Random Variates Generation. Springer-Verlag, New York, 1986, Ch. X, Sect. 4 (+ Errata!).
References std::abs(), std::numeric_limits< _Tp >::epsilon(), std::log(), and std::numeric_limits< _Tp >::max().
π p
template<typename _IntType = int> double std::binomial_distribution< _IntType >::p () const [inline]
Returns the distribution p parameter.
π param() β getter
template<typename _IntType = int> param_type std::binomial_distribution< _IntType >::param () const [inline]
Returns the parameter set of the distribution.
π param() β setter
template<typename _IntType = int> void std::binomial_distribution< _IntType >::param (const param_type & __param) [inline]
Sets the parameter set of the distribution.
__paramβ The new parameter set of the distribution.
π reset
template<typename _IntType = int> void std::binomial_distribution< _IntType >::reset () [inline]
Resets the distribution state.
References std::normal_distribution< _RealType >::reset().
π t
template<typename _IntType = int> _IntType std::binomial_distribution< _IntType >::t () const [inline]
Returns the distribution t parameter.
π Friends And Related Symbol Documentation
π« operator<<
template<typename _IntType = int> template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > & __os, const std::binomial_distribution< _IntType1 > & __x) [friend]
Inserts a binomial_distribution random number distribution __x into the output stream __os.
__osβ An output stream.__xβ A binomial_distribution random number distribution.
Returns: The output stream with the state of __x inserted or in an error state.
π« operator==
template<typename _IntType = int> bool operator== (const binomial_distribution< _IntType > & __d1, const binomial_distribution< _IntType > & __d2) [friend]
Return true if two binomial distributions have the same parameters and the sequences that would be generated are equal.
π« operator>>
template<typename _IntType = int> template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > & __is, std::binomial_distribution< _IntType1 > & __x) [friend]
Extracts a binomial_distribution random number distribution __x from the input stream __is.
__isβ An input stream.__xβ A binomial_distribution random number generator engine.
Returns: The input stream with __x extracted or in an error state.
β¨ Author
Generated automatically by Doxygen for libstdc++ from the source code.
Okay bestie, thatβs the whole page π
π Source/version vibes: libstdc++, manual section 3cxx, and the footer literally reads libststd::binomial_d...ion< _IntType >(3cxx). Date? Not on this page, so I canβt invent one β no cap π«Άβ¨
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms