---
name: "std::tr1::binomial_distribution"
section: "3cxx"
platform: "linux"
package: "libstdc++6-4.4-doc"
version: "4.4.5-8"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/std::tr1::binomial_distribution/3cxx"
---

# std::tr1::binomial\_distribution(3cxx)

A discrete binomial random number distribution.

## NAME

std::tr1::binomial\_distribution -

A discrete binomial random number distribution.

## SYNOPSIS

### Public Types

typedef \_RealType **input\_type**\
 typedef \_IntType **result\_type**\

### Public Member Functions

**binomial\_distribution** (\_IntType \_\_t=1, const \_RealType &\_\_p=\_RealType(0.5))\
 template\<class \_UniformRandomNumberGenerator \> result\_type **operator()** (\_UniformRandomNumberGenerator &\_\_urng)\
 \_RealType **p** () const \
 void **reset** ()\
 \_IntType **t** () const \

### Friends

template\<typename \_IntType1 , typename \_RealType1 , typename \_CharT , typename \_Traits \> **std::basic\_ostream**\< \_CharT, \_Traits \> & **operator\<\<** (**std::basic\_ostream**\< \_CharT, \_Traits \> &\_\_os, const **binomial\_distribution**\< \_IntType1, \_RealType1 \> &\_\_x)\
 template\<typename \_IntType1 , typename \_RealType1 , typename \_CharT , typename \_Traits \> **std::basic\_istream**\< \_CharT, \_Traits \> & **operator\>\>** (**std::basic\_istream**\< \_CharT, \_Traits \> &\_\_is, **binomial\_distribution**\< \_IntType1, \_RealType1 \> &\_\_x)\

## Detailed Description

### template\<typename \_IntType = int, typename \_RealType = double\> class std::tr1::binomial\_distribution\< \_IntType, \_RealType \>

A discrete binomial random number distribution.

The formula for the binomial probability mass function is $ p(i) = } p^i (1 - p)^{t - i} $ where $ t $ and $ p $ are the parameters of the distribution.

Definition at line 1951 of file tr1\_impl/random.

## Member Function Documentation

### template\<typename \_IntType , typename \_RealType \> template\<class \_UniformRandomNumberGenerator \> binomial\_distribution\< \_IntType, \_RealType \>::result\_type std::tr1::binomial\_distribution\< \_IntType, \_RealType \>::operator() (\_UniformRandomNumberGenerator & \_\_urng) 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\_TR1 is defined.

Reference: Devroye, L. 'Non-Uniform Random Variates Generation.' Springer-Verlag, New York, 1986, Ch. X, Sect. 4 (+ Errata!).

Definition at line 1161 of file random.tcc.

References std::abs(), std::log(), and std::max().

### template\<typename \_IntType = int, typename \_RealType = double\> \_RealType std::tr1::binomial\_distribution\< \_IntType, \_RealType \>::p () const` [inline]` Gets the distribution `p` parameter.

Definition at line 1979 of file tr1\_impl/random.

### template\<typename \_IntType = int, typename \_RealType = double\> \_IntType std::tr1::binomial\_distribution\< \_IntType, \_RealType \>::t () const` [inline]` Gets the distribution `t` parameter.

Definition at line 1972 of file tr1\_impl/random.

## Friends And Related Function Documentation

### template\<typename \_IntType = int, typename \_RealType = double\> template\<typename \_IntType1 , typename \_RealType1 , typename \_CharT , typename \_Traits \> std::basic\_ostream\<\_CharT, \_Traits\>& operator\<\< (std::basic\_ostream\< \_CharT, \_Traits \> & \_\_os, const binomial\_distribution\< \_IntType1, \_RealType1 \> & \_\_x)` [friend]` Inserts a binomial\_distribution random number distribution `__x` into the output stream `__os`.

**Parameters:**

*\_\_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.

### template\<typename \_IntType = int, typename \_RealType = double\> template\<typename \_IntType1 , typename \_RealType1 , typename \_CharT , typename \_Traits \> std::basic\_istream\<\_CharT, \_Traits\>& operator\>\> (std::basic\_istream\< \_CharT, \_Traits \> & \_\_is, binomial\_distribution\< \_IntType1, \_RealType1 \> & \_\_x)` [friend]` Extracts a binomial\_distribution random number distribution `__x` from the input stream `__is`.

**Parameters:**

*\_\_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.
