乱数種をセットする
srand
は rand
に使われる乱数種をセットして返します。
srand; # 実際には呼び出す必要はない
print rand; # 0 以上 1 未満のランダムな数値
通常、rand
を使う際に、
事前に srand
を呼び出す必要はありません。
なぜなら、rand
は事前に srand
が呼び出されていなければ、自動的に srand
呼び出すからです。
また、srand
は呼ぶ出すにしても 1 プロセスごとに 1 度だけ呼び出すようにしてください。
何度も srand
を呼び出すと、逆に rand
が生成する乱数のランダム性が低下する恐れがあります。
引数 EXPR には整数を指定することができます。浮動小数点数を指定してもエラーにはなりませんが、 基本的に小数点以下は無視されます。
基本的に、引数 EXPR を与える必要はありません。
もし引数 EXPR に同じ値を与えると、rand
の結果は常に同じになります。
それが意図的なら良いのですが、そうでないなら、引数 EXPR は与えないほうが良いでしょう。
srand 1;
print rand; # 呼び出すたびに同じ値になる