⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 trandom.cc

📁 早期freebsd实现
💻 CC
字号:
/* a test file for Random classes*/#include <assert.h>#include <ACG.h>#include <MLCG.h>#include <SmplStat.h>#include <SmplHist.h>#include <Binomial.h>#include <Erlang.h>#include <Geom.h>#include <HypGeom.h>#include <NegExp.h>#include <Normal.h>#include <LogNorm.h>#include <Poisson.h>#include <Uniform.h>#include <DiscUnif.h>#include <Weibull.h>void demo(Random& r){  SampleStatistic s;  cout << "five samples:\n";  for (int i = 0; i < 5; ++i)  {    double x = r();    cout << x << " ";    s += x;  }  cout << "\nStatistics for 100 samples:\n";  for (; i < 100; ++i)  {    double x = r();    s += x;  }  cout << "samples: " << s.samples() << " ";  cout << "min: " << s.min() << " ";  cout << "max: " << s.max() << "\n";  cout << "mean: " << s.mean() << " ";  cout << "stdDev: " << s.stdDev() << " ";  cout << "var: " << s.var() << " ";  cout << "confidence(95): " << s.confidence(95) << "\n";}main(){  int i;  ACG gen1;  cout << "five random ACG integers:\n";  for (i = 0; i < 5; ++i)    cout << gen1.asLong() << " ";  cout << "\n";  MLCG gen2;  cout << "five random MLCG integers:\n";  for (i = 0; i < 5; ++i)    cout << gen2.asLong() << " ";  cout << "\n";    Binomial r1( 100, 0.5, &gen1);  cout << "Binomial r1( 100, 0.50, &gen1) ...\n";  demo(r1);  Erlang r2( 2.0, 0.5, &gen1);  cout << "Erlang r2( 2.0, 0.5, &gen1) ...\n";  demo(r2);  Geometric r3( 0.5, &gen1);  cout << "Geometric r3(&gen1, 0.5)...\n";  demo(r3);  HyperGeometric r4( 10.0, 150.0, &gen1);  cout << "HyperGeometric r4( 10.0, 150.0, &gen1)...\n";  demo(r4);  NegativeExpntl r5( 1.0, &gen1);  cout << "NegativeExpntl r5( 1.0, &gen1)...\n";  demo(r5);  Normal r6( 0.0, 1.0, &gen1);  cout << "Normal r6( 0.0, 1.0, &gen1)...\n";  demo(r6);  LogNormal r7( 1.0, 1.0, &gen1);  cout << "LogNormal r7( 1.0, 1.0, &gen1)...\n";  demo(r7);  Poisson r8( 2.0, &gen1);  cout << "Poisson r8( 2.0, &gen1)...\n";  demo(r8);  DiscreteUniform r9( 0, 1, &gen1);  cout << "DiscreteUniform r9( 0.0, 1.0, &gen1)...\n";  demo(r9);  Uniform r10( 0.0, 1.0, &gen1);  cout << "Uniform r10( 0.0, 1.0, &gen1)...\n";  demo(r10);  Weibull r11( 0.5, 1.0, &gen1);  cout << "Weibull r11( 0.5, 1.0, &gen1)...\n";  demo(r11);  cout << "SampleHistogram for 100 Normal samples\n";  SampleHistogram h(-4.0, 4.0);  for (i = 0; i < 100; ++i)    h += r6();  h.printBuckets(cout);  cout << "\nEnd of test\n";}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -