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

    ###Date: 2018.5.11

    ============================================================

    srand 初始随机数发生器 
    rand 随机数发生器

    注意 
    在C++中,当srand中的参数相同(即随机数种子相同)时,则产生的伪随机数列也相同

    关系: 
    srand函数用于为rand函数产生随机数种子

    使用: 
    通常用time(NULL)作为srand函数的传入参数; 
    当使用time(NULL)作为srand函数的传入参数时,rand函数则以时间作为随机数种子进而产生随机数

    技巧 1: 
    若要产生指定范围内的随机整数例如 [a, b) 则可以使用: a + rand() % (b - a) 表达式,也即为要产生 [a, b)范围内的随机整数,可以使用 a + rand() % n 表达式,其中 a 为起始值, n 为随机整数取值范围的大小即为 b - a 
    技巧 1 解释: 
    使用 rand() % n 产生的是 [0, n)之间的随机整数,则在此基础上进行改进,加上一个起始值 a 则产生随机整数的范围变为 [a, n + a),那么要产生[a, b)内的随机整数,则只需要将n变为 b - a 
    技巧 2 : 
    如要产生随机小数,直接将产生的随机整数除以相应次数的10,例:若产生3位的随机小数,则先产生随机整数,然后除以1000即可


    参考:

    https://blog.csdn.net/zl_130/article/details/52279054

    https://blog.csdn.net/rookie_wei/article/details/38464733

    https://blog.csdn.net/u010141928/article/details/70940616

  • 相关阅读:
    STL简介
    Java语言实现简单FTP软件------>上传下载队列窗口的实现(七)
    c++模板
    10891
    错误处理:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter
    Linux crontab 语法和具体的例子
    LoadImage()使用
    matplotlib简单的新手教程和动画
    三白话经典算法系列 Shell排序实现
    AccountManager教程
  • 原文地址:https://www.cnblogs.com/SoaringLee/p/10532497.html
Copyright © 2011-2022 走看看