C++——随机数算法

C++——随机数算法前言:在这里,我们要明确,计算机随机化出来的数字都是伪随机数字,就是近似于随机数,简单来说这个伪随机数需要依靠一个种子来决定这个数值的大小。默认情况下,这个种子的值是1。这造成了如果不改变种子的值,我们生成的随机数就会是同一个值。所以,我们就要设置种子C语言版本在C语言里,产生随机数主要用上两个函数,一个是srand(),另外一个是rand()函数。这个也没啥介绍的,具体看代码,就传递几个参数。rand()函数会返回一个范围在0到RAND_MAX(至少是32767,我的机器上是int的最大值)之间的

大家好,又见面了,我是你们的朋友全栈君。

前言:

在这里,我们要明确,计算机随机化出来的数字都是伪随机数字,就是近似于随机数,简单来说这个伪随机数需要依靠一个种子来决定这个数值的大小。默认情况下,这个种子的值是1。这造成了如果不改变种子的值,我们生成的随机数就会是同一个值。所以,我们就要设置种子

C语言版本

在C语言里,产生随机数主要用上两个函数,一个是srand(),另外一个是rand()函数。这个也没啥介绍的,具体看代码,就传递几个参数。
rand()函数会返回一个范围在0到RAND_MAX(至少是32767,我的机器上是int的最大值)之间的伪随机数(整数)。 RAND_MAX的大小可以查看,在include文件夹(linux在usr目录、windows在安装目录)的stdlib.h可以看到,linux下其值为2147483647(),其值与具体系统有关。

#include <iostream>
#include <cstdlib> // srand() 包含在这个库中
#include <ctime>//time() 包含在这个库中,

using namespace std;


int main()
{
  srand(unsigned(time(NULL)));
  // srand()括号当中就是种子的数值,默认情况是srand(1)
  int st = rand()%10;
  //通过取余的方式限制范围
  cout << st << endl;
  return 0;
}

随机输出10个数,如图:
在这里插入图片描述

C++版本

在另一篇文章里,请点击查阅!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158936.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hive 正则表达式详解[通俗易懂]

    hive 正则表达式详解[通俗易懂]hive中的正则表达式还是很强大的。数据工作者平时也离不开正则表达式。对此,特意做了个hive正则表达式的小结。所有代码都经过亲测,正常运行。1.regexp语法:AREGEXPB操作类型:strings描述:功能与RLIKE相同selectcount(*)fromolap_b_dw_hotelorder_fwherecreate_date_widnotregexp

    2022年5月13日
    58
  • 使用HSDB查看类变量的内存布局(5)

    使用HSDB查看类变量的内存布局(5)

    2020年11月20日
    205
  • 简易SDRAM控制器的verilog代码实现

    简易SDRAM控制器的verilog代码实现SDRAM是每隔15us进行刷新一次,但是如果当SDRAM需要进行刷新时,而SDRAM正在写数据,这两个操作之间怎么进行协调呢?需要保证写的数据不能丢失,所以,如果刷新的时间到了,先让写操作把正在写的4个数据(突发长度为4)写完,然后再去进行刷新操作;而如果在执行读操作也遇到需要刷新的情况,也可以先让数据读完,再去执行刷新操作。思路:SDRAM控制器包括初始化、读操作、写操作…

    2022年7月25日
    9
  • 嵌入式系统基础知识——之嵌入式微处理器体系结构(1.2)「建议收藏」

    嵌入式系统基础知识——之嵌入式微处理器体系结构(1.2)「建议收藏」1.2嵌入式微处理器体系结构1.2.1 冯诺依曼与哈弗结构1、冯诺依曼结构也称为普林斯顿结构,即程序将指令存储器和数据存储器合并在一起的存储结构,程序与数据公用1个存储空间,只是程序指令存储地址与数据存储地址指向同一存储器的不同物理地址;采用单一的地址及数据总线,程序指令与数据的宽度相同,在告诉运算时,传输通道上存在着瓶颈效应。主要包括:英特尔的8086,ARM7、MIPS等微

    2022年9月28日
    2
  • hibernate中executeUpdate的缓存问题

    hibernate中executeUpdate的缓存问题解决hibernate批量更新时的缓存问题

    2022年10月20日
    3
  • javascript instanceof_javascript插件

    javascript instanceof_javascript插件连接:http://houliang4285.iteye.com/blog/1585157

    2022年10月14日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号