negative_binomial_distribution in C++ with Examples


In this tutorial, we will be discussing a program to understand negative_binomial_distribution in C++.

This function follows the negative Binomial discrete distribution and produces integers according to this random distribution.

Example

 Live Demo

#include <bits/stdc++.h>
using namespace std;
int main() {
   //setting number of experiments
   const int exps = 10000;
   const int numberstars = 100;
   default_random_engine generator;
   negative_binomial_distribution<int> distribution(4, 0.5);
   int p[10] = {};
   for (int i = 0; i < exps; ++i) {
      int counting = distribution(generator);
      if (counting < 10)
         ++p[counting];
   }
   cout << "Negative binomial distribution with "<< "( k = 4, p = 0.5 ) :" << endl;
   //printing the sequence from the array
   for (int i = 0; i < 10; ++i)
      cout << i << ": " << string(p[i] * numberstars / exps, '*') << endl;
   return 0;
}

Output

Negative binomial distribution with ( k = 4, p = 0.5 ) :
0: *****
1: ************
2: ****************
3: ***************
4: *************
5: **********
6: ********
7: *****
8: ***
9: **

Updated on: 06-Apr-2020

95 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements