欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c++實現(xiàn)簡單隨機數(shù)的代碼

 更新時間:2021年05月23日 11:32:01   作者:Zycc++  
在本篇文章里小編給大家整理的是一篇關(guān)于c++實現(xiàn)簡單隨機數(shù)的代碼內(nèi)容,有需要的朋友們可以跟著學(xué)習(xí)下。

c++簡單隨機數(shù)

#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)));
	//
	//求負數(shù)隨機數(shù),先產(chǎn)生0-2n之間的隨機整數(shù),再減去n就得到了-n - n 之間的數(shù)
	  
}

實例擴展:

隨機數(shù)引擎都需要一個種子,生成的都是偽隨機數(shù)。

引擎適配器可以套一個隨機數(shù)引擎:

  • discard_block_engine在連續(xù)若干個偽隨機數(shù)中選擇若干個;
  • independent_bits_engine把位數(shù)多的偽隨機數(shù)壓縮成位數(shù)少的;
  • shuffle_order_engine把連續(xù)若干個偽隨機數(shù)重排。

套娃的方式是模板,理論上你還可以用適配器套適配器,不過CPU可能會有意見。

隨機數(shù)引擎的模板參數(shù)怎么???標(biāo)準(zhǔn)定義了一些數(shù)學(xué)家們發(fā)現(xiàn)的效果良好的隨機數(shù)引擎:LCG minstd_rand0、minstd_rand、knuth_b;MT mt19937、mt19937_64;LFG ranlux24_base、ranlux48_base、ranlux24、ranlux48。如果你還是無從下手,那就用default_random_engine,編譯器的開發(fā)者們?yōu)槟氵x好了他們認為最合適的,在MSVC中是mt19937,在GCC中是minstd_rand0。

以上工具都生成偽隨機數(shù),標(biāo)準(zhǔn)還定義了真·隨機數(shù)引擎random_device,盡管標(biāo)準(zhǔn)也允許它是偽隨機的。如果它是真隨機的,那么使用起來它的效果無疑是最好的,但是多次調(diào)用后性能會急劇下降,通常只用于生成偽隨機數(shù)引擎的種子。

隨機數(shù)生成器類型都定義了靜態(tài)方法min和max,返回生成的隨機數(shù)的范圍,以及無參數(shù)的函數(shù)調(diào)用運算符operator(),返回隨機數(shù)。

#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;
}

到此這篇關(guān)于c++實現(xiàn)簡單隨機數(shù)的代碼的文章就介紹到這了,更多相關(guān)c++簡單隨機數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++泛型編程函(數(shù)模板+類模板)

    C++泛型編程函(數(shù)模板+類模板)

    這篇文章主要介紹了C++泛型編程函(數(shù)模板+類模板),類模板與函數(shù)模板一樣也會經(jīng)過兩次編譯,在此文中重點區(qū)分一下類模板與模板類,函數(shù)模板與模板函數(shù)的概念,泛型編程是C++開發(fā)的一大精髓,靈活地運用泛型編程,需要的朋友可以參考一下
    2022-02-02
  • 詳解C++中的增量運算符++和減量運算符--的用法

    詳解C++中的增量運算符++和減量運算符--的用法

    這篇文章主要介紹了C++中的增量運算符++和減量運算符--的用法,分為前綴情況和后綴情況來講,需要的朋友可以參考下
    2016-01-01
  • C語言單鏈表的圖文示例講解

    C語言單鏈表的圖文示例講解

    單鏈表是鏈表的其中一種基本結(jié)構(gòu)。一個最簡單的結(jié)點結(jié)構(gòu)如圖所示,它是構(gòu)成單鏈表的基本結(jié)點結(jié)構(gòu)。在結(jié)點中數(shù)據(jù)域用來存儲數(shù)據(jù)元素,指針域用于指向下一個具有相同結(jié)構(gòu)的結(jié)點。?因為只有一個指針結(jié)點,稱為單鏈表
    2023-02-02
  • C語言 strftime 格式化顯示日期時間的實現(xiàn)

    C語言 strftime 格式化顯示日期時間的實現(xiàn)

    下面小編就為大家?guī)硪黄狢語言 strftime 格式化顯示日期時間的實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C++入門之模板基礎(chǔ)講解

    C++入門之模板基礎(chǔ)講解

    這篇文章主要為大家介紹了C++入門之模板基礎(chǔ),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • C語言樹狀數(shù)組的實例詳解

    C語言樹狀數(shù)組的實例詳解

    這篇文章主要介紹了C語言樹狀數(shù)組的實例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • C語言利用sprintf固定字符串輸出位數(shù)

    C語言利用sprintf固定字符串輸出位數(shù)

    sprintf?函數(shù)是一個?C?語言中的函數(shù),也被許多其他編程語言所支持。這篇文章主要介紹了C語言如何利用sprintf固定字符串輸出位數(shù),需要的可以參考一下
    2023-03-03
  • 深入分析C++派生類中的保護成員繼承

    深入分析C++派生類中的保護成員繼承

    這篇文章主要介紹了C++派生類中的保護成員繼承,深入對C++面向?qū)ο缶幊痰睦^承機制進行了解析,需要的朋友可以參考下
    2015-09-09
  • 探討C++中不能聲明為虛函數(shù)的有哪些函數(shù)

    探討C++中不能聲明為虛函數(shù)的有哪些函數(shù)

    下面小編就為大家?guī)硪黄接慍++中不能聲明為虛函數(shù)的有哪些函數(shù)。希望對大家有所幫助。一起跟隨小編過來看看吧,祝大家游戲愉快哦
    2017-01-01
  • C語言中位域的使用詳解

    C語言中位域的使用詳解

    位域是C語言中的一種高級功能,允許程序員為結(jié)構(gòu)體的成員分配特定數(shù)量的位,本文主要為大家介紹了位域的使用以及優(yōu)缺點,希望對大家有所幫助
    2023-07-07

最新評論