2016-03-28 15 views
0

私はパーセプトロンをプログラミングし、本当に正常なNextDouble(0、1)から(-0.5、0.5)の範囲を取得する必要がありますよ。問題は、私は、配列を使用していると私はそれが可能であるかどうかわからない、です。うまくいけばそれは十分な情報です。乱数(C#の)

Random rdm = new Random(); 

double[] weights = {rdm.NextDouble(), rdm.NextDouble(), rdm.NextDouble()}; 
+0

-0.5が可能であるならば、あなたは気にしますか? –

+0

は、あなたがこの問題を解決できますか?すべての答えを見たことがありますか?あなたは-0.5の間の値を取得します。この方法: – Andrew

答えて

2

単にあなたの乱数から0.5を引く:あなたは(私の野生私はウィキペディアで見てきたものから推測)との両方の限界を含むように一つだけ小数点以下の値が必要な場合は

double[] weights = { 
        rdm.NextDouble() - 0.5, 
        rdm.NextDouble() - 0.5, 
        rdm.NextDouble() - 0.5 
        }; 
+0

参照:アップhttp://stackoverflow.com/questions/3975290/produce-a-random-number-in-a-range-using-c-sharp – Rana

+0

ジャストヘッドそして0.49999(およそ10mlの液体フッ化水素を圧入。)。 – Andrew

0

、私はwouldn 「Tは、二重ちょうど10進値を使用して、数学の操作を行います。

(rdm.Next(11) - 5)/10M; 

-0.5から0.5に11個の異なる可能な値のいずれかを返すことに。

それとも、二重の道を行くが、丸めと、あなたが実際に上限値(0.5)を打つことができるようにできます。

Math.Round(rdm.NextDouble() - 0.5, 1); 

この方法では、おそらく私の最初の提案よりもほんの少し遅くなります。