【Ruby3.x】srand()関数の使い方
srand関数の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
srand関数は、Rubyプログラム内で乱数発生器のシード(種)を設定する関数です。Rubyのrandメソッドなどで生成される乱数は、実際には擬似乱数であり、このシード値によってどのような乱数系列が生成されるかが決まります。
引数を指定せずにsrandを呼び出すと、Rubyは現在の時刻などに基づき自動的にシード値を設定します。これにより、プログラムを実行するたびに異なる乱数系列が生成され、毎回予測不能な乱数を得られます。これは、ゲームやシミュレーションなど、ランダムな結果が求められる一般的な場面で利用されます。
一方、srand関数に整数値を引数として指定すると、その数値がシードとして設定されます。同じシード値を指定すれば、randメソッドは常に同じ乱数系列を生成するようになります。この機能は、プログラムのテストやデバッグにおいて、特定の乱数パターンを再現する必要がある場合に非常に役立ちます。例えば、エラーが特定の乱数列でしか発生しないといった問題の再現に活用できます。
このように、srand関数は、乱数の再現性や予測不可能性をプログラマーが制御するために重要な役割を果たす関数です。
構文(syntax)
1srand(integer_value)
引数(parameters)
seed = nil
- seed = nil: 乱数の生成に使用するシード値を指定します。nilを指定した場合は、現在の時刻などシステム依存の値が使用されます。
戻り値(return)
Integer
srand関数は、乱数生成器のシード値を整数で設定します。この値は、生成される乱数の系列を決定します。