zoukankan      html  css  js  c++  java
  • 随机数产生方法

    随机数产生方法

    1、调用系统的随机种子。

     1 /*
     2  * 调用系统的时间随机种子数,产生随机数(0-32767)
     3  * srand(time(0))为调用系统伪随机种子函数,用来初始化随机数发生器的随机种子
     4  */
     5 void srandRandom(){
     6     int i;
     7     srand((int)time(0));
     8     for(i=0;i<10;i++){
     9             printf("%.3f ",(rand()/32767.0));
    10         }
    11 }

    2、自定义产生随机数:

     1 /*
     2  * @author
     3  * 自定义的随机数生成函数
     4  * 利用的原理就是 m/base,其中m=(0,base),这里是实数除法
     5  * 其中temp2,temp3步骤求temp1相对base的余数
     6  * 这里定义一个r的地址变量,旨在每次利用前一个随机数的随机“种子”
     7  * a,b的值可以自己自定义,base的值最好是2的整数倍
     8  *
     9  */
    10 double userDefinedRandom(double * r) {
    11     double a, b, base, p;
    12     double temp1, temp2, temp3;
    13     a = 17.0, b = 139.0, base = 400.0;
    14     temp1 = a * (*r) + b;
    15     temp2 = (int) (temp1 / base);
    16     temp3 = temp1 - base * temp2;
    17     *r = temp3;
    18     p = *r / base;
    19     return p;
    20 }
  • 相关阅读:
    Python生成器表达式
    Python列表解析
    Python迭代器(Iterator)
    Python set 集合
    python eval 函数妙用
    Python字典 (dict)
    Python序列之元组 (tuple)
    Python序列之列表 (list)
    递归和反射
    常用标准库
  • 原文地址:https://www.cnblogs.com/hoojjack/p/5018771.html
Copyright © 2011-2022 走看看