这里整理了c++生成随机数的一般方法,然后列出了生成随机实数的程序。

参考博客:
https://blog.csdn.net/hellokandy/article/details/90045187
https://blog.csdn.net/Gary_ghw/article/details/125498414

文章目录

  • 前言
  • 1、获得a~b之间的一个随机整数
  • 2、获得0~10.0之间的15个随机实数

前言

在生成随机数之前要先知道c++中的rand()产生的是伪随机数,每次执行时得出的数据都是相同的。因此,为了得到不同的数据就要用srand()函数去初始化它。


  • 设置随机数种子
    通常在程序开始时采用语句:srand((unsigned)time(NULL))使获得的随机数都不重复,
    后面便可直接使用rand()便可获得随机数了。

1、获得a~b之间的一个随机整数

rand()%(b-a+1)+a;

具体举几个例子:
(1) 产生0~9这10个整数中的一个随机整数

rand()%10;

(2) 产生1~10这10个整数中的一个随机整数

rand()%10+1;

2、获得0~10.0之间的15个随机实数

#include <iostream>
#include <unordered_map>
using namespace std;int main(){double a[15];srand((unsigned)time(NULL));for(int i=0;i<15;i++){a[i]=rand() / (double) RAND_MAX *10.0;cout<<a[i]<<" ";}cout<<endl;
}

其中rand() / double(RAND_MAX)是获得0~1之间浮点数的语句。
此时生成的结果如下:

若只想得到一个小数的随机数可以通过round()函数获得:

#include <iostream>
#include <unordered_map>
using namespace std;int main(){double a[15];srand((unsigned)time(NULL));for(int i=0;i<15;i++){a[i]=rand() / (double) RAND_MAX *10.0;cout<<a[i]<<" ";a[i]=round(a[i]*10)/10;cout<<a[i]<<" ";}cout<<endl;
}

产生结果如下:

上图中每个随机生成的浮点数通过round()函数将其四舍五入,得到了保留一位小数的随机数。

若想保留两位小数,只需写成a[i]=round(a[i]*100)/100;即可。

本文只是整理一下自己用的程序碎片,如有错误欢迎批评指正。

c++中随机生成实数相关推荐

  1. python随机密码生成在26个字母中随机生成10个_习题6:二.3 随机密码生成

    编写程序在26个字母大小写和9个数字组成的列表中随机生成10个8位密码. import random num_ls = [] # 创建数字.小写字母.大写字母空列表 str_ls = [] STR_l ...

  2. 随机密码生成。编写程序,在26个字母大小写和10个数字组成的列表中随机生成10个8位密码。

    随机密码生成.编写程序,在26个大小写字母和10和数字组成的列表中随机生成10个8位的密码: 根据题目要求,我们编写的程序主干要有哪些内容呢? 1.随机选择 2.26个大小写字母 3.10个阿拉伯数字 ...

  3. 双色球规则:双色球每注投注号码由6个红色球号码和1个蓝色球号码组成。红色球从1—33中随机生成6个不重复的号码;蓝色球号码从1—16中随机生成1个;客户通过键盘录入购买的红色球6个(不重复)和蓝色

    双色球规则:双色球每注投注号码由6个红色球号码和1个蓝色球号码组成. 红色球从1-33中随机生成6个不重复的号码:蓝色球号码从1-16中随机生成1个: 客户通过键盘录入购买的红色球6个(不重复)和蓝色 ...

  4. 随机密码生成。编写程序,接收列表在26个字母大小写和10个数字组成的列表中随机生成10个8位密码。

    随机密码生成.编写程序,接收列表在26个字母大小写和10个数字组成的列表中随机生成10个8位密码. 这里我们要用到random函数. 代码如下: import random for i in rang ...

  5. 计算机中表格怎么用英语说,电脑excel表格如何在表格中随机生成一个大写英文字母...

    电脑excel表格如何在表格中随机生成一个大写英文字母 我们可以利用一个函数(在表格中随机生成大写字母)来帮助我们制作英文练习本,今天小编就告诉大家电脑excel表格如何在表格中随机生成一个大写英文字 ...

  6. 随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码。

    #e6.1随机密码生成,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码 import random s = ["a","b","c&q ...

  7. java中随机生成26个字母组合的随机验证码

    实现原理,通过随机生成1-52的随机数,然后从定义好的字母数字中取元素进行组合. 下面是代码: public static void login(){String [] yan ={"a&q ...

  8. java中随机生成汉字

    main方法中使用: //随机生成100个汉字 String ss=""; for(int i=0;i<100;i++){ ss+=getChinese(i); } Syst ...

  9. python中随机生成数字方法

    在python中经常会需要随机生成一些数字,此时就需要用到python中的random模块中的randint函数了,方法如图: 此时执行程序时会随机生成闭区间1到100之间的数字,包含1和100, 但 ...

最新文章

  1. ftp+线程池批量上传文件
  2. strstr,strrchr,strpos,strrpos的区别http://blog.qit...
  3. 隐藏响应的server,X-Powered-By
  4. 数据填充规则之PKCS7
  5. python获取文件夹名_python基础之获取文件目录及名称
  6. idea findbugs使用_IDEA如何协同开发统一代码风格?编码不规范如何解决?
  7. 机器视觉在工业检测中的应用
  8. 十大热门语言(程序员必备之路)
  9. 2019/10/13中国工商银行笔试编程题
  10. Latex文献报错 Something‘s wrong--perhaps a missing \item. \end{thebibliography}
  11. 西安交大计算机814大纲,西安交大考研辅导班:西安交通大学2020年809电子技术基础考研科目参考书目及考试大纲...
  12. 计算机组成原理 或的微指令,微指令
  13. 调试python程序---pdb
  14. Office 365入门教程(一):开始使用Office 365
  15. 【Mybatis】出现The error may involve defaultParameterMap错误
  16. 搭建SpringCloud配置中心 Config Server
  17. 股票基础知识(入市必读)
  18. 腾讯汤道生:微信乘车码已全量上线昆明地铁
  19. firefox如何卸载插件plugins和临时文件夹
  20. 力学笃行系列之List自定义排序

热门文章

  1. python自动化工具之pywinauto(三)_自动化工具之三:pywinauto
  2. 2018年内大892数据结构部分参考答案
  3. String 和 StringBuider
  4. 留言薄+留言薄==BBS
  5. 充电桩APP开发方案
  6. 使用SqlConnection.connectionString连接数据库
  7. 移动开发者大会 -- 后感
  8. android 4.3 刷机,金立GN9005 Android 4.3-4.4 (S5.1 移动4G)一键救砖教程,轻松刷回官方系统...
  9. Blaze三连:BlazePose、BlazePalm、BlazeFace
  10. android V1,V2,V3,V4签名详解