Sto cercando di utilizzare il seguente codice (tratto da Internet) per generare numeri dalla distribuzione binomiale. Compila ma una esecuzione si blocca. (Sto usando g ++ su mac.)Generazione del numero dalla distribuzione binomiale mediante C++ TR1
Qualcuno potrebbe suggerire un codice funzionante per generare numeri dalla distribuzione binomiale utilizzando le caratteristiche della libreria C++ TR1?
#include <tr1/random>
#include <iostream>
#include <cstdlib>
using namespace std;
using namespace std::tr1;
int main()
{
std::tr1::mt19937 eng;
eng.seed(time(NULL));
std::tr1::binomial_distribution<int, double> roll(5, 1.0/6.0);
std::cout << roll(eng) << std::endl;
return 0;
}
Hai controllato in quale riga si blocca il programma? (Hai usato un debugger?) – Zeta
Si blocca nella linea cout. Più precisamente chiamare 'roll (eng)' non sembra tornare. – kay
Funziona bene con C++ 11 std :: binomial_distribution di clang (dopo aver rimosso l'argomento modello aggiuntivo), FYI –