Loose-Info.com

Last Update 2019/12/24


TOP - C言語 - stdlib.h - random()

0〜(2**31)-1の範囲の、疑似ランダム整数の連続値を計算します。
srandom()関数でシード値の設定を行います。
シード値が同じ場合は、返される数値と順序は同一となります。
rand()よりも優れた値を生成します。

 戻り値1  = random()

戻り値1 :
long
疑似ランダム整数値

(例)
#include <stdio.h> #include <stdlib.h> int main() { int i; srandom(0); printf("シード値(0)\n"); for (i=0; i<5; i++) { printf(" [%d回目] : %ld\n", i, random()); } srandom(1); printf("シード値(1)\n"); for (i=0; i<5; i++) { printf(" [%d回目] : %ld\n", i, random()); } srandom(0); printf("シード値(0)再設定\n"); for (i=0; i<5; i++) { printf(" [%d回目] : %ld\n", i, random()); } return 0; }

実行結果
シード値(0) [0回目] : 577655601 [1回目] : 1248161417 [2回目] : 192959563 [3回目] : 143633695 [4回目] : 541917479 シード値(1) [0回目] : 1804289383 [1回目] : 846930886 [2回目] : 1681692777 [3回目] : 1714636915 [4回目] : 1957747793 シード値(0)再設定 [0回目] : 577655601 [1回目] : 1248161417 [2回目] : 192959563 [3回目] : 143633695 [4回目] : 541917479