c++简单随机数 #include<iOStream> #include<ctime> #include<cstdlib> using na
c++简单随机数
#include<iOStream>
#include<ctime>
#include<cstdlib>
using namespace std;
int random(int n)
{
return (long long)rand()*rand%n;
}
int main()
{
srand(unsigned(time(0)));
//
//求负数随机数,先产生0-2n之间的随机整数,再减去n就得到了-n - n 之间的数
}
实例扩展:
随机数引擎都需要一个种子,生成的都是伪随机数。
引擎适配器可以套一个随机数引擎:
套娃的方式是模板,理论上你还可以用适配器套适配器,不过CPU可能会有意见。
随机数引擎的模板参数怎么取?标准定义了一些数学家们发现的效果良好的随机数引擎:LCG minstd_rand0、minstd_rand、knuth_b;MT mt19937、mt19937_64;LFG ranlux24_base、ranlux48_base、ranlux24、ranlux48。如果你还是无从下手,那就用default_random_engine,编译器的开发者们为你选好了他们认为最合适的,在MSVC中是mt19937,在GCC中是minstd_rand0。
以上工具都生成伪随机数,标准还定义了真·随机数引擎random_device,尽管标准也允许它是伪随机的。如果它是真随机的,那么使用起来它的效果无疑是最好的,但是多次调用后性能会急剧下降,通常只用于生成伪随机数引擎的种子。
随机数生成器类型都定义了静态方法min和max,返回生成的随机数的范围,以及无参数的函数调用运算符operator(),返回随机数。
#include <iostream>
#include <random>
int main()
{
auto engine = std::default_random_engine(std::random_device()());
std::cout << "min = " << engine.min() << "; max = " << engine.max() << std::endl;
std::cout << "random numbers: ";
for (int i = 0; i != 10; ++i)
std::cout << engine() << ' ';
std::cout << std::endl;
}
到此这篇关于c++实现简单随机数的代码的文章就介绍到这了,更多相关c++简单随机数内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: c++实现简单随机数的代码
本文链接: https://www.lsjlt.com/news/126602.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
一口价域名售卖能注册吗?域名是网站的标识,简短且易于记忆,为在线用户提供了访问我们网站的简单路径。一口价是在域名交易中一种常见的模式,而这种通常是针对已经被注册的域名转售给其他人的一种方式。
一口价域名买卖的过程通常包括以下几个步骤:
1.寻找:买家需要在域名售卖平台上找到心仪的一口价域名。平台通常会为每个可售的域名提供详细的描述,包括价格、年龄、流
443px" 443px) https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294.jpg https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294-768x413.jpg 域名售卖 域名一口价售卖 游戏音频 赋值/切片 框架优势 评估指南 项目规模
0