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

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

戻り値1 = random()

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

(例)
#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


Copyright(C) 2006-2012 CLAYPOT. All Rights Reserved.