Computer >> Máy Tính >  >> Lập trình >> C ++

negative_binomial_distribution trong C ++ với các ví dụ

Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để hiểu negative_binomial_distribution trong C ++.

Hàm này tuân theo phân phối rời rạc Nhị thức âm và tạo ra các số nguyên theo phân phối ngẫu nhiên này.

Ví dụ

#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;
}

Đầu ra

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