使用 tr1 在 C++ 中生成超出范围的随机数

2023-12-28

我试图从 [0, 1) 范围内的实数均匀分布生成数字。但编译器生成的数字超出了 [0, 1) 范围。

这是代码:

int main(void) {
    // Solver solve;

    mt19937 mteng;
    mteng.seed(rdtsc());
    uniform_real<double> uniRealD;

    double randomNum;

    for (int index = 0; index < 10; index++){
        randomNum = uniRealD(mteng);

        if(randomNum<0.5)
            cout<<index<<" no. random number is: "<<randomNum<<endl;
        else
            cout<<"number generate is not in range"<<endl;
    }

    return 0;
}

对代码可能有什么问题有什么评论吗?我在用rdtsc()作为种子。


我不得不去掉你的种子功能,rdtsc(),做一些包含,引入一个using namespace std,并将 0.5 更改为 1.0,然后更改uniform_real to uniform_real_distribution,但之后,使用 libc++,我得到:

#include <random>
#include <iostream>

using namespace std;

int main(void) {
    // Solver solve;

    mt19937 mteng;
    mteng.seed(0);
    uniform_real_distribution<double> uniRealD;

    double randomNum;

    for (int index = 0; index < 10; index++){
        randomNum = uniRealD(mteng);

        if(randomNum<1.0)
            cout<<index<<" no. random number is: "<<randomNum<<endl;
        else
            cout<<"number generate is not in range"<<endl;
    }

    return 0;
}

0 no. random number is: 0.592845
1 no. random number is: 0.844266
2 no. random number is: 0.857946
3 no. random number is: 0.847252
4 no. random number is: 0.623564
5 no. random number is: 0.384382
6 no. random number is: 0.297535
7 no. random number is: 0.056713
8 no. random number is: 0.272656
9 no. random number is: 0.477665
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 tr1 在 C++ 中生成超出范围的随机数 的相关文章

随机推荐

  • 无法从 Linux 连接到 SQL Server

    我正在尝试连接到 CentOS 5 8 上的 SQL Server 2008 我正在使用 unixODBC 2 3 0 和 SQL Server ODBC 驱动程序 www microsoft com en us download deta
  • 链接描述文件中的 KEEP 是什么意思?

    The LD手册 http ftp gnu org old gnu Manuals ld 2 9 1 html mono ld html SEC2没有解释什么KEEP命令执行 下面是第三方链接描述文件的一个片段 其特点是KEEP 什么是KE
  • 在php中组合两个(或更多..)多维数组

    我有一个使用不同参数运行多次的查询 我正在使用 xml 解析器将结果返回给 jQuery 我似乎无法找到一种方法来组合第一个 节点 上的结果而不覆盖第一个条目 简化的代码示例 temp1 returnArray 0 temp2 return
  • 如何像 DevTools 那样突出显示 Chrome 扩展中的元素?

    我有兴趣创建一个 Chrome 扩展程序 它列出了网页上菜单中具有 id 属性的所有元素 然后 当用户单击菜单中的元素时 网页上相应的元素就会突出显示 当您右键单击并检查某个元素时 我看到 Chrome 开发工具会突出显示该元素 我很好奇是
  • uint32_t 和 uint8_t[4] 未定义行为的联合? [复制]

    这个问题在这里已经有答案了 在评论中这个答案 https stackoverflow com a 8568531 1025391据说使用如下联合将整数分割成字节将是未定义的行为 该位置给出的代码与此相似但不完全相同 如果我更改了代码的未定义
  • 使用 SIS 执行 postgres db init 的批处理文件给出权限被拒绝

    跟随我的上一个问题 https stackoverflow com questions 30924913 how to install postgres with nsis with all parameters我现在尝试通过 NSIS 代
  • 将 StackNavigator 与 TabNavigator 集成

    如何组合 StackNavigator 和 TabNavigator 我的以下代码有效 索引 android js import React Component from react import AppRegistry Text View
  • SQL Server 错误:“SQL Server 子查询返回超过 1 个值”

    子查询返回超过 1 个值 当子查询跟在 gt 后面或子查询用作表达式时 这是不允许的 我在调试以下代码时收到此有线错误消息 WHEN NOT EXISTS SELECT 1 FROM defs WITH NOLOCK WHERE defau
  • Neo4J 数据库大小/缩小

    我们有一个包含约 1000 万个节点和约 3 亿个关系的 Neo4j 数据库 数据库已增长至约 80 Gig 日常工作会删除旧数据并添加新数据 因此节点和关系的大约数量保持相当恒定 然而 db 文件的物理文件大小不断增长 例如 relati
  • 具有多核 CPU 的 JAX pmap

    使用多核CPU的正确方法是什么jax pmap 以下示例在 CPU 核心后端上为 SPMD 创建环境变量 测试 JAX 是否识别设备 并尝试设备锁定 import os os environ XLA FLAGS xla force host
  • 使用 XUnit 进行 .Net Core DynamodDB 单元测试

    使用C net core 2 0 dynamo db 我有我的 Web api 它与我的 dynamo db 数据库交互 具有 Get 和 Post 方法 方法示例 HttpGet api data public async Task
  • 使用 JAXB 编译多个包含同一元素的重复定义的 XSD

    问题 如何使 xjc Jaxb 为同一命名空间中包含重复元素定义的多个模式生成正确的 java 类 信息 我有三个 xsd 模式 A B 和 C 它们都具有相同的目标命名空间 它们都是给我的 3 个 shemas 我无论如何都不允许以任何方
  • 如何使用 setBorder 和 JFrame 在 Java 中为矩形添加边框

    我正在尝试添加边框Rectangle元素 由于某种原因它无法工作 是否与JFrame 我可以设置我的整个JFrame有边界 但找不到setBorder和我的矩形 这是我的代码 package trivia import java awt C
  • 在 Mocha 测试中使用 for 循环

    我是摩卡新手 我想尝试使用 for 循环来创建测试用例 我想测试我制作的一个函数 该函数接受标准 12 小时时间的输入 并将其输出为 24 小时军用时间 这就是它的样子 exports main function time var hr p
  • 相邻的 svg:多边形边不相交

    我正在使用彼此相邻的多边形绘制条形图 如下所示 如果仔细观察 每个多边形之间都有空白 放大 我正在努力阻止这种情况发生 我发现了 SVGshape rendering https developer mozilla org en US do
  • JPA CascadeType Persist 不适用于 Spring 数据

    我有两个实体 用户 Data EqualsAndHashCode exclude id Entity Table name users public class User Id SequenceGenerator name user id
  • 合并TFS中的多个文件

    我们使用 TFS 作为我们软件的版本控制系统 目前该软件在两个独立的分支中有两个版本 分支 版本1 0 和分支 版本2 0 版本 1 0 中的每个修复都必须合并到 版本 2 0 中 我从要合并的文件的上下文菜单中手动合并 我的问题是 某些修
  • 如何在 Android 中将 JSON ARRAY 数据发布到服务器

    我想将以下 JSON 数据发送到服务器并读取 android 中的响应 下面是 Json 数据 class OrderItemListDto orderItemList class OrderItemDto orderId 24 itemI
  • 如果在单个查询中 $pull 之后数组计数为零,mongodb 会删除文档

    我有一个要求 我的comments架构如下所示 id 1 comments userId 123 comment nice userId 124 comment super 我想根据以下内容提取元素userId场地 我正在执行以下查询 co
  • 使用 tr1 在 C++ 中生成超出范围的随机数

    我试图从 0 1 范围内的实数均匀分布生成数字 但编译器生成的数字超出了 0 1 范围 这是代码 int main void Solver solve mt19937 mteng mteng seed rdtsc uniform real