ऋणात्मक द्विपद वितरण एक यादृच्छिक संख्या वितरण है जो एक ऋणात्मक द्विपद असतत वितरण के अनुसार पूर्णांक उत्पन्न करेगा। इसे पास्कल वितरण के रूप में जाना जाता है इसलिए ऋणात्मक द्विपद बंटन को इस प्रकार लिखा जा सकता है
$$P\lgroup i\arrowvert k,p\rgroup=\lgroup \frac{k+i-1}{i}\rgroup p^{k}\lgroup 1-p\rgroup^{i}$$पी>
उदाहरण
#include <iostream> #include <random> using namespace std; int main(){ const int nrolls = 10000; // number of rolls const int nstars = 100; // maximum number of stars to distribute default_random_engine generator; negative_binomial_distribution<int> distribution(3,0.5); int p[10]={}; for (int i=0; i<nrolls; ++i) { int number = distribution(generator); if (number<10) p[number]++; } cout << "negative_binomial_distribution (3,0.5):" << endl; for (int i=0; i<10; ++i) cout << i << ": " << string(p[i]*nstars/nrolls,'*') << endl; }
आउटपुट
0: ************ 1: ******************* 2: ***************** 3: **************** 4: *********** 5: ******* 6: ***** 7: *** 8: ** 9: *