Partager via


binomial_distribution::operator()

Retourne une valeur aléatoire.

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

Paramètres

  • Engine
    Le type du moteur aléatoire.

  • eng
    Le moteur aléatoire.

  • par0
    Le module de paramètre utilisé pour retourner la valeur aléatoire.

Notes

La première fonction membre utilise le moteur eng comme une source de valeurs intégrales aléatoires régulièrement distribuées et retourne des valeurs intégrales avec chaque valeur i se produisent avec la probabilité pr(i) = comb(stored_t, i) * stored_p^i * (1 - stored_p)^(stored_t-i), où comb(t, i) est le nombre de combinaisons possibles d' ti pris par objets à la fois.

La deuxième fonction membre se comporte de la même manière, excepté qu'elle utilise les paramètres stockés dans par0.

Exemple

 

// 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); 
    } 
 
  

Configuration requise

en-tête : <random>

l'espace de noms : DST

Voir aussi

Référence

<random>

binomial_distribution Class