使用GNU SGL库生成随机数

时间:2012-11-26 17:26:37

标签: c

如何在GNU SGL中为随机数生成生成相同的效果,如下所示:

int ind = rand() % 2

即。完全生成0或1。

2 个答案:

答案 0 :(得分:0)

你可以尝试这个例子: -

  #include <stdio.h>
 #include <gsl/gsl_rng.h>

 int
 main (void)
 {
   const gsl_rng_type * T;
   gsl_rng * r;

   int i, n = 10;

   gsl_rng_env_setup();

   T = gsl_rng_default;
   r = gsl_rng_alloc (T);

   for (i = 0; i < n; i++) 
     {
       double u = gsl_rng_uniform (r);
       printf ("%.5f\n", u);
     }

   gsl_rng_free (r);

   return 0;
 }

答案 1 :(得分:0)

您可以尝试这样的事情:

int random_number = ((rand() / (double)RAND_MAX) < 0.5) ? 0 : 1;