Compartir a través de


binomial_distribution::operator()

devuelve un valor aleatorio.

template<class Engine>
    result_type operator()(Engine& eng);
template<class Engine>
    result_type operator()(Engine& eng,
        const param_type& par0);

Parámetros

  • Engine
    El tipo de motor aleatorio.

  • eng
    el motor aleatorio.

  • par0
    El paquete del parámetro utilizado para devolver el valor aleatorio.

Comentarios

La primera función miembro utiliza el motor eng como origen de valores enteros aleatorios uniformemente distribuidos y devuelve valores enteros con cada valor i que aparece con la probabilidad pr(i) = comb(stored_t, i) * stored_p^i * (1 - stored_p)^(stored_t-i), donde es el número comb(t, i) de posibles combinaciones de ti tomado los objetos al mismo tiempo.

La segunda función miembro se comportará, pero utiliza los parámetros almacenados en par0.

Ejemplo

 

// std_tr1__random__binomial_distribution_operator_fn.cpp 
// compile with: /EHsc 
#include <random> 
#include <iostream> 
 
typedef std::mt19937 Myeng; 
typedef std::binomial_distribution<int, double> Mydist; 
int main() 
    { 
    Myeng eng; 
    Mydist dist(2, 0.6); 
    Mydist::input_type engval = eng(); 
    Mydist::result_type distval = dist(eng); 
 
    distval = distval;  // to quiet "unused" warnings 
    engval = engval; 
 
    std::cout << "p == " << dist.p() << std::endl; 
    std::cout << "t == " << dist.t() << std::endl; 
 
    dist.reset(); // discard any cached values 
    std::cout << "a random value == " << dist(eng) << std::endl; 
    std::cout << "a random value == " << dist(eng) << std::endl; 
    std::cout << "a random value == " << dist(eng) << std::endl; 
 
    return (0); 
    } 
 
  

Requisitos

encabezado: <aleatorio>

espacio de nombres: std

Vea también

Referencia

<random>

binomial_distribution Class