48559


Rubyで呼び出しごとに異なる乱数列が生成されるメソッドを作成したいです．  
D言語であれば unpredictableSeed のような感じです．  
仕様は以下のようです．  
ご教授お願い致します．

仕様：  
・randomSeed()呼び出しごとに異なる乱数列を生成する  
・返り値にとあるclassを返す

[code]

    def randomSeed
        rnd = Random.new(rand(1000)) ← ここで呼び出しごとに異なる乱数列を生成する
        return class.new(rnd)
    end
    
[/code]

補足：  
D言語ではこのように書けます

[code]

    Class!xxx randomSeed()
    {
        Random rnd;
        rnd.seed(unpredictableSeed);
        return Class!xxx(rnd);
    }
    
[/code]


CC BY-SA 4.0
2018-09-19T10:19:46.897
48553
2018-09-20T05:17:15.450
2018-09-20T05:17:15.450
30173
30173
question
ruby random
Rubyで呼び出しごとに異なる乱数列が生成されるメソッドを作成したい


そのまま`Random.new`としてください。`Random.new`はシード値を引数として渡さない場合、[`Random.new_seed`](https://docs.ruby-
lang.org/ja/latest/method/Random/s/new_seed.html)を呼び出し、その結果をシード値とします。`Random.new_seed`はシード値として適切な値を呼び出す毎にランダムに返します。

[code]

    a = Random.new
    b = Random.new
    p a.seed
    p b.seed
    p a.rand
    p b.rand
    
[/code]

上のコードを実行すれば、`a`と`b`でシード値が異なること、最初の乱数も異なることが確認できると思います。


CC BY-SA 4.0
2018-09-19T12:28:25.123
48559
2018-09-19T12:28:25.123
7347
48553
answer