生成偽隨機數

2021-09-07 06:25:14 字數 466 閱讀 4486

真正的隨機數只能自然生成,所以我們人工得到的隨機數被稱為偽隨機數。

使用中的rand()函式可以生成0-rand_max之間的隨機整數.

rand()函式使用乙個起始的種子值生成一系列數字,對於乙個特定的種子產生的序列數永遠是相同的。如果使用rand()函式只使用乙個種子值,即預設的種子值,就會使得序列數是有限的,一定程度上喪失隨機性,所以我們需要使用乙個不會相同的種子。rand()一般在測試直接使用。

在標頭檔案中也有乙個srand()函式,它可以用作為引數來傳遞給函式的特定種子值來初始序列數。它是作為rand()的輔助函式

種子值的話,使用另乙個庫函式time().time()會把2023年1月1日至今的總秒數返回作為乙個整數,因為時間用不停歇,所以值用不重複。

得到隨機整數:

int chosen=0

;srand(time(null));

chosen=rand();

隨機數生成 偽隨機數和真隨機數

c語言隨機數的生成,很隨機,又不隨機,比如像下面的程式 c語言生成隨機數的函式在stdlib.h庫中 include includeint main return 0 上面的 經過執行生成了 41 18467 6334 26500但是無論執行多好遍結果都是一樣的,隨機數並不隨機。這是因為rand 函...

rand生成偽隨機數

void srand unsigned seed 設定隨機數種子。int rand void 根據設定的種子計算生成一組整型偽隨機數序列。若沒有手動設定seed,這個函式會自動設定seed為1,即手動呼叫srand 1 與不呼叫srand產生的效果一樣。每次呼叫rand時,會依次將隨機數從隨機數序列...

python random 生成偽隨機數

源 lib random.py 該模組為各種分布實現偽隨機數生成器。對於整數,從範圍中有統一的選擇。對於序列,存在隨機元素的統一選擇,用於生成列表的隨機排列的函式,以及用於隨機抽樣而無需替換的函式。在實在線,有計算均勻,正態 高斯 對數正態,負指數,伽馬和貝塔分布的函式。為了生成角度分布,可以使用v...