首页 > 其他分享 >qt5--QRandomGenerator随机数类

qt5--QRandomGenerator随机数类

时间:2022-10-06 14:59:08浏览次数:50  
标签:qt5 QWidget -- Win QRandomGenerator 随机数 win include

 

win.h

#ifndef WIN_H
#define WIN_H

#include <QWidget>

#include <QRandomGenerator>  //随机数类
#include <QDebug>


class Win : public QWidget
{
    Q_OBJECT

public:
    Win(QWidget *parent = nullptr);
    ~Win();

    QRandomGenerator qg;  //随机数实例





};
#endif // WIN_H

 

 

win.cpp

#include "win.h"

Win::Win(QWidget *parent)
    : QWidget(parent)
{

    int i=0,n=0;

    quint32 value = QRandomGenerator::global()->generate();  //返回一个32位随机数
    //随机数序列不相同---1866719396

    int A=10,B=15;
    for(i=0;i<10;i++){
    n=QRandomGenerator::global()->generateDouble()*(B-A)+A; //产生[10,15)之间的随机整数
    //跟种子无关----推荐使用
    //qDebug()<<n;
    }

    quint32 v=qg.generate();  //返回一个32位随机数
    //注意:种子相同,随机数序列相同---853323747

    for(i=0;i<100;i++){
        n=qg.bounded(20); //产生[0,20)之间的随机整数
        //注意:种子相同,随机数序列相同
        //qDebug()<<n;
    }

    
    for(i=0;i<10;i++){
        n=qg.bounded(10,20); //产生[10,20)之间的随机整数
        //注意:种子相同,随机数序列相同
        //qDebug()<<n;
    }

    qg.seed(2);  //使用种子值重新播种此对象
    //也起到修改种子的作用

    for(i=0;i<10;i++){
        double d=qg.generateDouble();  //产生[0,1)之间的随机小数
    //注意:种子相同,随机数序列相同
    //qDebug()<<d;
    }


}

Win::~Win()
{
}

 

 

 

 

 

 

 

 

 

标签:qt5,QWidget,--,Win,QRandomGenerator,随机数,win,include
From: https://www.cnblogs.com/liming19680104/p/16757590.html

相关文章

  • 深入理解 JavaScript
    原型和继承__proto__属性对象有一个隐藏属性[[Prototype]],指向其原型(父类型),如果没有原型则为null。从对象中读取一个不存在的属性时,会自动往原型中查找这个属性,这就......
  • 用伪代码实现进制转化
    伪代码Write"Enterthenewbase"ReadnewBaseWrite"Enterthenumbertobeconverted"ReaddecimalNumberSetquotientto1WHILE(quotientisnotzero)Setq......
  • 力扣1(java&python)-两数之和(简单)
    题目:给定一个整数数组nums 和一个整数目标值target,请你在该数组中找出和为目标值target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个......
  • Elasticsearch 进阶检索 (一)
    1、官方文档https://www.elastic.co/guide/en/elasticsearch/reference/7.4/index.htmlSearchAPIES支持两种基本方式检索:一个是通过使用RESTrequestURL发送搜索......
  • ddd
    bytesigned_vec=8'b1000_0000;bit[8:0]result_vec;logic[7:0]logic_vec=8'b1000_0000;bit[7:0]bit_vec=8'b1000_0000;initialbeginresult_vec......
  • Spring中最常用的11个扩展点
    转载自:微信公众号[Java后端技术]前言我们一说到spring,可能第一个想到的是IOC(控制反转)和AOP(面向切面编程)。没错,它们是spring的基石,得益于它们的优秀设计,使得sprin......
  • 004-Redis 的 Generic 命令组
    1.Generic1.1copy1.1.1基本信息COPYsourcedestination[DBdestination-db][REPLACE]summary:Copyakeysince:6.2.0Thiscommandcopiesthevaluestored......
  • 014——static应用知识:单例设计模式
    static应用知识:单例设计模式设计模式开发中经常遇到一些问题,一个问题通常有n种解法的,但其中肯定有一种解法是最优的,这个最优的解法被人总结出来了,称之为设计模式。......
  • android notification
    //创建普通通知StringchannelId="测试渠道";if(android.os.Build.VERSION.SDK_INT>=android.os.Build.VERSION_CODES.O){......
  • MySQL 基础语法
    SELECT基础用法SELECTname,ageFROMuserDISTINCT——对检索结果去重应用于所有列而不仅是它后面的一列,所有列的值都不同才会被认为不同。SELECTDISTI......