当前位置: 首页 > wzjs >正文

西安网站优化公司秦皇岛酒店网站设计

西安网站优化公司,秦皇岛酒店网站设计,济南网站建设行知科技,网站建设增值服务在 C 中&#xff0c;有多种方法可以生成指定范围内的随机整数&#xff0c;下面介绍两种不同的实现方式&#xff1a; 1. 使用 <cstdlib> 库和 rand() 函数 <cstdlib> 库中的 rand() 函数是 C 从 C 语言继承而来的传统随机数生成函数。配合 srand() 函数设置随机数…

在 C++ 中,有多种方法可以生成指定范围内的随机整数,下面介绍两种不同的实现方式:

1. 使用 <cstdlib> 库和 rand() 函数

<cstdlib> 库中的 rand() 函数是 C++ 从 C 语言继承而来的传统随机数生成函数。配合 srand() 函数设置随机数种子,就可以生成随机整数。

#include <iostream>
#include <cstdlib>
#include <ctime>int main() {// 设置随机数种子std::srand(static_cast<unsigned int>(std::time(nullptr)));// 定义范围int min = 1;int max = 10;// 生成指定范围内的随机整数int randomNumber = min + std::rand() % (max - min + 1);std::cout << "随机整数: " << randomNumber << std::endl;return 0;
}
代码解释:
  • std::srand(static_cast<unsigned int>(std::time(nullptr)));:使用当前时间作为随机数种子,确保每次运行程序时生成的随机数序列不同。
  • min + std::rand() % (max - min + 1);:通过取模运算将 rand() 生成的随机数映射到指定的范围 [min, max] 内。
缺点:
  • rand() 生成的随机数质量不高,随机性较差。
  • 其随机数分布不均匀,尤其是在范围较大时。

2. 使用 <random> 库(C++11 及以后)

<random> 库提供了更强大、更灵活的随机数生成功能,能够生成高质量的随机数。

#include <iostream>
#include <random>int main() {// 定义范围int min = 1;int max = 10;// 创建随机数引擎std::random_device rd;std::mt19937 gen(rd());// 创建分布对象std::uniform_int_distribution<> dis(min, max);// 生成指定范围内的随机整数int randomNumber = dis(gen);std::cout << "随机整数: " << randomNumber << std::endl;return 0;
}
代码解释:
  • std::random_device rd;:用于获取一个随机数种子,它通常从操作系统的随机源(如 /dev/urandom)获取随机数。
  • std::mt19937 gen(rd());:创建一个梅森旋转算法(Mersenne Twister)的随机数引擎,使用 rd() 作为种子。
  • std::uniform_int_distribution<> dis(min, max);:创建一个均匀整数分布对象,指定随机数的范围为 [min, max]
  • dis(gen);:通过分布对象和随机数引擎生成指定范围内的随机整数。
优点:
  • 生成的随机数质量高,随机性好。
  • 随机数分布均匀,适用于各种需要高质量随机数的场景。

综上所述,如果对随机数质量要求不高,可以使用 rand() 函数;如果需要高质量的随机数,建议使用 <random> 库。

http://www.dtcms.com/wzjs/800458.html

相关文章:

  • 西安地产网站建设怎样建设手机网站
  • 商会建设网站说明网站定位与功能分析
  • 高校 网站建设实施方案设计网站如何推广方案
  • 山儿网站建设公司品牌建设还有待升华
  • 中国站长之家网站自己做网站的成本
  • 做音乐相册的网站成都微官网制作
  • 什么网站可以做直播计算机专业做网站的开题报告
  • ip地址进入网站怎么做的做平面设计应该在哪个网站求职
  • 南沙高端网站建设东莞58同城网招聘
  • 物流公司网站 源码有没有做生物科技相关的网站
  • 网上购物网站建设规划论文深圳华强北电子市场
  • 模板网站案例鞍山便民网
  • 网站怎样做的有吸引力微企点做网站视频
  • 微信微网站是什么做网上竞猜网站合法吗
  • 做网站店铺图片用什么软件软件程序开发公司
  • 网站种类有哪些招聘外包服务公司
  • 学校网站建设管理办法云南手工活外发加工网
  • 网站建设开票是几个点买正品东西哪个网最好
  • 免费做网站教程长沙市停课最新消息
  • 做阿里巴巴网站图片小甲虫抖音代运营
  • 微信做明天展现网站要多少钱织梦网站如何做二级导航
  • 建站开发工具无锡设计网站
  • 成都做网站建设的公司北京计算机培训学校
  • 团购商城网站建设方案成都91获客
  • 站长工具关键词写作投稿平台
  • 兰州网站建设ulezhi做侵权网站用哪里的服务器
  • 365建站器洛阳网站建设汉狮怎么样
  • 深圳广告网站设计制作什么是网站开发类课程
  • 建设网站需要哪些职位怎样做返利网站
  • 海南定安建设局网站张家口建设局网站