首页 > 其他分享 >随机数的实现

随机数的实现

时间:2023-04-22 12:59:22浏览次数:34  
标签:std 实现 生成器 生成 rd int 随机数

针对使用随机数,每次可能出现相同的数,采用以下相对较好的实现方法

  • 第1行和第2行是头文件,分别包含了输入输出流和随机数相关的库函数。
  • 第4行调用random_device函数创建一个真正的随机数生成器rd,用于生成种子。
  • 第5行使用mt19937引擎生成器gen,将上面生成的随机数作为种子。这里使用了Mersenne Twister 19937算法生成器。
  • 第8行创建了一个uniform_int_distribution对象dis,表示生成[1,65535]之间的均匀分布整数。
  • 第9~13行使用for循环生成5个随机整数,并输出到屏幕上。
#include <iostream>
#include <random>

int main()
{
    // 设置种子
    std::random_device rd;
    std::mt19937 gen(rd());

    // 生成随机整数
    std::uniform_int_distribution<> dis(1, 65535);
    for (int i = 0; i < 5; ++i) {
        std::cout << dis(gen) << " ";
    }

    return 0;
}

 

标签:std,实现,生成器,生成,rd,int,随机数
From: https://www.cnblogs.com/INSTANTMOC/p/17342780.html

相关文章

  • bat通过for来实现命令执行结果赋值输出方法
    前提知识点:变量赋值方法:setd=123变量使用方法:echo%d%命令结果赋值不能直接用,只能用for来赋值如:for/F%%iin('time/t')do(sett=%%i)即可将time/t的命令结果赋给变量t结果中如果有空格等分隔符,赋值结果会只为第一段内容,要把结果全赋值,需要加"tokens=\*"如:for/F"t......
  • django实现文件上传、删除、下载
    django文件上传定义一个包含FileFiled的类ModelWithFileField,其中upload字段的upload_to参数表示上传的文件存放在什么地方classModelWithFileField(models.Model):filename=models.CharField(max_length=100,verbose_name="文件名称")upload_date=models.Date......
  • Mysql分布式锁的简单实现
    在做多线程操作数据库时避免不了的会遇到线程之间争抢同一条记录的问题,在mysql里可以实现分布式锁解决线程的反复调用问题。具体方法是利用数据库的唯一约束,设置一个比如状态的列来判断此记录是否正在被线程处理,可以默认值为0,表示未被处理,当值变为1时表示正在处理,值为2时......
  • 物联网---03.Modbus协议实现与设备的通讯,收发信息,实现对设备信息的采集
    一、扫盲:什么是modbus?       Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议    Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通......
  • 为什么匿名内部类可以实例化并实现抽象方法?lambda表达式是简化了匿名内部类的实现过程
    为什么匿名内部类可以实例化并实现抽象方法?在Java中,接口是一种特殊的抽象类型,它只定义了一个或多个抽象方法。接口不能被实例化,但是我们可以使用匿名内部类来实现接口并创建一个具体的对象。匿名内部类是一种没有名字的局部内部类,它可以在定义的同时创建一个实例对象。因此,当我......
  • 表格里,如何实现input失去焦点事件
     一诺佳人创建于 2020-09-0213:33 大佬,请问表格的input框内怎么实现动态失去焦点事件,例如填写数量和单价,金额自动生成, 我在formatter里写了,如下,但是不是自动触发,是点击新增按钮,才会自动计算一次。     参考代码表格字......
  • 关于若依框架实现list数据导出到excel并实现下载(简单实现)
    https://www.cnblogs.com/jdearfaust/p/16661595.html没看源码,仅仅会用先是在需要导出的实体类上添加若依自带的@Excel的注解,注解中主要的两个参数一个是name用于生成excel中的字段名,一个是sort用于在excel中字段的排序@Excel(name="车辆id",cellType=Excel.ColumnType.N......
  • Rainbond 结合 Jpom 实现云原生 & 本地一体化项目管理
    Jpom是一个简而轻的低侵入式在线构建、自动部署、日常运维、项目运维监控软件。提供了:节点管理:集群节点,统一管理多节点的项目,实现快速一键分发项目文件项目管理:创建、启动、停止、实时查看项目控制台日志,管理项目文件SSH终端:在浏览器中执行SSH终端,方便进行日常运维,记录执......
  • C++实现职工管理系统
    1、管理系统需求1.1考察知识点:C++的面向对象性,文件的读写操作1.2需求分析职工管理系统可以用来管理公司内所有员工的信息利用C++来实现一个基于多态的职工管理系统公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责普通......
  • linux 中实现数据的每一行进行排序
     001、(base)[b20223040323@admin1test2]$lsa.txt(base)[b20223040323@admin1test2]$cata.txt##测试数目689375256882427(base)[b20223040323@admin1test2]$foriin{1..3};dosed-n"$i"pa.txt|sed's//\n/g'|......