2 つの double の間で乱数を生成することは可能ですか?
例:
public double GetRandomeNumber(double minimum, double maximum)
{
return Random.NextDouble(minimum, maximum)
}
次に、次のように呼び出します。
double result = GetRandomNumber(1.23, 5.34);
ご意見をいただければ幸いです。
ベストアンサー1
はい。
Random.NextDouble は 0 から 1 の間の double を返します。次に、その値に、必要な範囲 (最大値と最小値の差) を掛け、それを基数 (最小値) に追加します。
public double GetRandomNumber(double minimum, double maximum)
{
Random random = new Random();
return random.NextDouble() * (maximum - minimum) + minimum;
}
実際のコードでは、random を静的メンバーにする必要があります。これにより、乱数ジェネレーターを作成するコストが節約され、GetRandomNumber を頻繁に呼び出すことができます。呼び出しごとに新しい RNG を初期化するため、呼び出し間でシステム時間が変わらないようにすばやく呼び出すと、RNG はまったく同じタイムスタンプでシードされ、同じ乱数ストリームが生成されます。