溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C++隨機(jī)數(shù)生成庫

發(fā)布時(shí)間:2024-09-10 12:45:42 來源:億速云 閱讀:78 作者:小樊 欄目:編程語言

在C++中,您可以使用<random>庫來生成隨機(jī)數(shù)

#include<iostream>
#include<random>

int main() {
    // 創(chuàng)建一個(gè)隨機(jī)數(shù)生成器引擎
    std::random_device rd;
    std::mt19937 gen(rd());

    // 設(shè)置生成隨機(jī)數(shù)的范圍(例如:0到99)
    std::uniform_int_distribution<> dis(0, 99);

    // 生成隨機(jī)數(shù)
    for (int n=0; n<10; ++n)
        std::cout<< dis(gen) << ' ';
    std::cout << '\n';
}

在這個(gè)示例中,我們首先包含了<iostream><random>頭文件。然后,我們創(chuàng)建了一個(gè)std::random_device對(duì)象rd,它可以為隨機(jī)數(shù)生成器提供種子。接下來,我們創(chuàng)建了一個(gè)std::mt19937對(duì)象gen,并使用rd()為其提供種子。

然后,我們創(chuàng)建了一個(gè)std::uniform_int_distribution<>對(duì)象dis,用于生成在指定范圍內(nèi)的隨機(jī)整數(shù)(在本例中為0到99)。最后,我們使用循環(huán)生成10個(gè)隨機(jī)數(shù),并將它們輸出到控制臺(tái)。

注意:std::mt19937是一種梅森旋轉(zhuǎn)算法實(shí)現(xiàn)的偽隨機(jī)數(shù)生成器,它提供了良好的隨機(jī)性能和速度表現(xiàn)。然而,對(duì)于某些需要安全性的應(yīng)用,這可能不夠充分。在這種情況下,您可能需要考慮使用基于密碼學(xué)的隨機(jī)數(shù)生成器。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

c++
AI